首页 > 开发 > Python > 正文

一些基础的python语句5 字符串格式化符号及转义字符含义

2016-09-01 19:29:13  来源:慕课网
  %c 格式化字符及其ASCII码
print('红红火火%c恍恍惚惚'%97)  结果应该为a 因为97的ASCII码为a
  %s 格式化字串符
print('红红火火%s恍恍惚惚'%'字串符')  字串符就被打印在红红火火和恍恍惚惚中间了
  %d 格式化整数或十进制
print('红红火火%d恍恍惚惚'%(18.5+1.3))  19就被打印在红红火火和恍恍惚惚中间了
  %o 格式化无符号八进制;%#o格式化有符号八进制
print('红红火火%o恍恍惚惚'%30)print('红红火火%#o恍恍惚惚'%30)  第一个结果为36 是八进制的36但没有明确的指出来;第二个结果为0o36明确的指出了为八进制
  %x 格式化无符号八进制;%#x格式化有符号八进制
print('红红火火%x恍恍惚惚'%30)print('红红火火%#x恍恍惚惚'%30)  结果为1e 原理跟八进制一样
  %f 格式化定点数 默认精确到小数点后六位
print('红红火火%f恍恍惚惚'%27.658)  27.658000就被打印在红红火火和恍恍惚惚中间了
  %e 用科学计数法格式化定点数
与%f原理一样只不过输出结果为科学计数法
  %g 根据数字的大小会自动使用%f或%e
  m.n可以插入到格式化字符符号%后面 m表示转义后的元素的最小总长度;n表示小数点后面的位数
print('红红火火%10.2f恍恍惚惚'%27.658)  %10.2f就变成了' 27.66'因为可以保留2位小数所以值为27.66,又因为转换的值长度最小为10 ,27.66已经占了5个字符所以左边用空格填充
  格式化字符符号%后面如果加上负号 那么格式化后的元素向左靠齐
print('红红火火%-10.2f恍恍惚惚'%27.658)  %-10.2f就变成了'27.66 '空格被挤到右边去了