获得用户输入的一个整数a,计算a的平方根,保留小数点后3位, 并打印输出。 输出结果采用宽度30个字符、右对齐输出、多余字符采用加号(+)填充,结果如果超过30个字符,则以结果宽度为准
输出三种形式:
一:%
二:{}
三:f’或者F’
import math
a=int(input())
b=pow(a,0.5)
print("{:+>30.3f}".format(b))
import math
a=int(input())
b=pow(a,0.5)
print("{:+>30.3f}".format(b))
这是一个输出问题
输出分为:
①字符串格式化(用%)
【%】【-】【+】【0】【m】【.n】格式字符%x
这些分别为:
格式运算符、左对齐、对输出若是正数则在前面加+号、
空位填0、最小宽度、指定精度、指定类型、要转换的值
多值输出用元组形式 如下面的(25,1963.495)
print("半径为%3d的圆面积为%8.2f"%(25,1963.495)
可用格式符\n等
输出%用%%
注意两者之间无逗号间隔,与c不同。
②使用format
一:替换,用{}(将%换为{})
print('{},{}',format('hello','world'))
print('{1},{0}',format('hello','world'))
print('{name},{age}',format(name= "汪",age = 20))
print("全为{0}",format('jhello'))
print("全为{0}".format('jhello'))
逗号或者点都行,逗号第一种形式,点第一种形式。
二没有一些条件那么就是
print("{0}".format(b))是一样的
结果为:
world hello
hello world
汪,20
1:位置对应
2:对应位置赋值
3:带关键字
如hello对应的位置为0即将hello赋给前面的0
二:在②一的基础{}内用:设置格式
如:
print("{0:+>20.3f}".format(b))
print("{0:+>20.3}".format(b))
解释:
+:多余空位用+填充
.>:右对齐
<:左对齐
^:中间对齐
(可在对齐符号前面添加补齐的字符默认是空格)
20.3f:总共20位数,保留三位小数,浮点类型。
20.3:总共20位数,保留三位有效位。
进制转换为字符串
如:
print("int:{0:d};hex:{0:x};oct:{0:o};bin:{0:b}".format(42))
在进制前面加前缀#,则输出时带进制前缀。
print("{:%.2}".format(42))
将其用浮点打印出来。
使用元组:
如:
position = (5,2,7)
print("x:{0[0]};y:{0[1]};z:{0[2]}".format(position))
三:把format当做函数
如:
a = "weatherof'{0[0]}'is'{0[1]}'".format
weather = [("Monday","rain"),("Tuesday","sunny")]
for i in weather:
print(a(i))
解释:
即将i中对应的0[0]和0[1]代如a中
四:f.string方法
a = 37,2
print(f'{a}:5.2f')
可在字符串中嵌入表达式
如:
a = 'qwe'
f'{a*2}'
输出即qweqwe
通过f或者F直接将其输出,变量的输出形式与二一样通过{score:5.2f},无非是将0,1换为了确切的变量名。