Python字符串格式化

放肆的年华 提交于 2020-02-08 16:40:08

Python字符串格式化:

字符串中符号:

  %c :单个字符

  %s :字符串

  %d :整数

  %u :无符号整数

  %o :无符号八进制数

  %x :无符号十六进制数

  %X :无符号十六进制数(大写)

  %f  :浮点数,可指定小数点后的精度

  %e  :对浮点数使用科学计数法,可指定小数点后的精度。%E 与 %e 作用相同

  %g  :%f 和 %e 的简写,%G 与 %g 作用相同

注:%o 为八进制(oct)、%x 为十六进制(hex)。

# %c 只能输出单个字符
a = 'a'
print("%c"%(a))
# a

# %s 字符串
strs = 'hello'
print("%s"%(strs))
# hello

# %d 整数
num = 123
print("%d"%(num))
# 123

num = -123
print("%d"%(num))
# -123

# %u 无符号整数
num = 123
print("%u"%(num))
# 123

num = -123
print("%u"%(num))
# -123

# %o 八进制数

num = 11
print("%o"%(num))
# 13    1*8**1 + 3*8**0 = 11

print(oct(11))
# 0o13


# %x 十六进制数
num = 18
print("%x"%(num))
# 12    1*16**1 + 2*8**0 = 18

print(hex(num))
# 0o12

# %f 浮点数
num = 12.45
print("%f"%(num))
# 12.450000

# %.2f 输出到小数点后两位
print("%.2f"%(num))
# 12.45


# %e 科学计数法
num = 120000
print("%e"%(num))
# 1.200000e+05

print("%.2e"%(num))
# 1.20e+05

print("%E"%(num))
# 1.200000E+05

print("%.2E"%(num))
# 1.20E+05


# %g : %f 和 %e 的简写
num = 31415926
print("%g"%(num))
# 3.14159e+07

print("%G"%(num))
# 3.14159E+07

格式化操作符的辅助指令:

  * :定义宽度 或 小数点精度

  - : 左对齐

  + : 使正数显示符号

  <sp>:在正数前显示空格

   # :在八进制前显示 0 ,在十六进制前显示 0x 或 0X

   0 :显示的数字前面填充 '0' 

  % :%%输出单个%

 (var) :字典参数映射变量

 m.n. :m是显示的宽度,n 是小数点后的位数


2020-02-08

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!