python--字符串格式化输出

2019-03-15  本文已影响0人  昆仑草莽

字符串的格式化,并非是像电脑手机一样清除,所谓程序中字符串的格式化是说,字符串所特定的格式,就像书写论文要有论文格式,书写新闻要有新闻格式一样,程序中的字符串也是有一定的输出格式的。
程序中处理最多的就是字符串,各个程序中字符串的处理也都大同小异,这里具体介绍python中的字符串格式化。

字符串的格式化输出

python中,字符串是可以进行拼接的,比如:

python 
st = '大家好'
st1 = '吃饭了吗'
st = '一起去吃饭吧'
 a = st + st1 + st2
输出就为:大家好吃饭了吗一起去吃饭吧

这就是字符串的拼接,在python中经常用到。这也是最简单的一种拼接。下面列出其他的方法:

1.% 格式化字符串
'%s'%('字符串')   : 后跟字符串
'%d'%整型数字   :后跟整数
'%f'%浮点数   :后跟小数
'%c'%ascII字符 :后跟ASCII字符
'%o'%8进制  :后跟int类型数字
'%x'%16进制:后跟int类型数字
'%e'%科学记数法:后更数字,可以整数,也可浮点数。
'%r'%('字符串')  :与%s相同,不同之处是,r 输出的是带引号的字符串,s 输出不带引号的字符串。
其中'%n.mf'%()  :n表示后面的数字或字符串占用多少位数,m表示小数点后几位数,如果你前面有 - 号。表示左对齐。其中 n 和 - 号对所有%起作用,m只应用与小数。

2.format格式化输出

'{} {} {}'.format('hello','world','python')
输出为:hello world python
'{:2f}'.format(2.333389)  :保留小数后两位输出;
'{a.:2f}'.format(a = 2.333389)   :赋值输出,前后的 a 都不可少;
'{:.2%}'.format(0.333333)  : 百分比输出格式  33.33%
'{:o}'.format(20)  :  8进制
'{:x}'.format(20)  :  16进制
'{a:<10}'.format(a=2.333,b=3.444)  : 左对齐,长度10,因为只有一个占位符,所有 b 就显示不出来了,没有 b 的位置。
'{a:x<10}'.format(a=2.333,b=3.2222)  :  左对齐,长度10,不足以x补齐,x为任意;
'{a:>10}'.format(a=2.333,b=3.444)  :  右对齐;
'{a:^10}'.format(a=2.333,b=3.444)  :  中间对齐;
'{{  hello {0}  }}'.format('python')  :  转义{和}符号,{0}表示后面python的占位,输出为{hello python}

f = 'hello {0}'.format
f('python')  :  这里是把format 当作一个函数来用。
###字符串的拼接

开篇我们介绍了使用 + 号来拼接,选择看其他的方法进行字符串的拼接。

1.'%s %s %s'%(st1,st2,st3)
2.' '.join([st1,st2,st3])  :   join 内是序列,这点要注意。如果是单独字符串,会将字符串逐个输出。
3.'{} {} {}'.format(st1,st2,st3,st4)  :  当出现st4时候,前面没有位置,只会输出前3个。不会报错。
  '{2} {1} {0}'.format(st1,st2,st3)  :  输出为:st3 st2 st1 根据下标索引进行输出。
上一篇下一篇

猜你喜欢

热点阅读