Python基础(三)—— print()格式化输出变量

  先举一个简单的例子说明:

name = 'Jack'
answer = input('你好,%s '%(name) + '你认识 Sean 不, 输入 yes or no
')
print('Sean 的回答是 %s'%(answer))

  如果想在输入或者输出语句中输出变量,需要 ①在合适位置添加 %s 等变量说明符 ② 在字符串后通过 % (C语言是通过逗号) 添加具体的变量。

 1.通过说明符输出

  • %s          字符串
  • %d          整形
  • %c          单字符
  • %f           浮点数。控制为数 %.2f 保留两位小数
  • %x          十六进制
t = 16.2326
print('%10.2f'%(t))  #10-表示字宽10位,精度为2
print('%010.2f'%(t))  #010表示字宽10,不够用0填充
print('%+010.2f'%(t))  #添加加号表示显示正负号
print('%-10.2f'%(t))  #添加负号表示左对齐


s = 'l'
print('%c'%(s))

print('快速增长%d%%'%(t))   #用 %% 表示 %

r = 188
print('十六进制%x'%(r))

   2. 通过 format 方式输出

  形式不难,看看例子之后便能掌握。

name = 'Bob'
age = 12
print('{} is {} years old'.format(name, age)) #括号除就是变量,同hibernate一致

print('{0} has {1} bros, {0} feels bad'.format(name, age)) #通过0,1 索引进行控制变量

print('name:{name}, age:{age}'.format(name='Bobbbb', age='12222'))  #可以将变量写在format内

  也可向 str.fromat()传递对象,插眼

    数字格式化:

t = -12.532
print('{:+.2f}'.format(t));   #带符号精度保留两位

print('{:.0f}'.format(t))   #不带效数四舍五入

print('{:0>10.2f}'.format(t))  #0填充左边,一共十位
print('{:x<10.2f}'.format(t))  #x...右.......

d = 126598.23659
print('{:,}'.format(d))  #三位用逗号分隔,国外计数

print('{:.4%}'.format(t))  #百分比,小数点后保留4位

k = 13
print('{:10d}'.format(k))  #占位10个,数字13右对齐

print('{{{}}}'.format(k))  #{13}。{{}}-->{}
原文地址:https://www.cnblogs.com/KongHuZi/p/10875429.html