在Python中,针对字符串的格式化主要有三种,分别是c风格的%字符串,python风格的format字符串和f字符串。需要重点掌握python风格的format字符串和f字符串,本节就一一介绍下。P 1、C风格的%字符串
学习过C语言的都知道,C语言里的字符串实在是让头大,但其也不乏设计的哲学,用起来还是挺高效的。下图展示的是C风格的%字符串使用方法。
上图经过拆解,看起来是不是不那么乱了。现在做个实例展示一下吧。
name = 'Rose'age = 19print("My name is %s,I'm %d years old."%(name,age))# 输出: My name is Rose,I'm 19 years old.
上述没有做标志位、宽度、精度字段的使用展示,主要是因为它不是我们的重点,了解即可。
P 2、format字符串
在Python中最常用的莫过于format字符串了,现在就来介绍一下它的格式,如下图:
如上图所示,.format()实际上是字符串的一种方法,它可以对字符串进行整理排布,得到想要的效果。
下面做format()字符串的使用演示,如下:
# 最基本的使用num = 100print('{0}'.format(num))
print('{0:10}'.format(num))
print('{0:010}'.format(num))
print('{0:-<10}'.format(num))
变量num修改为10000,默认对齐方式,增加千分位展示,如下:num = 10000print('{0:10,}'.format(num))
变量num修改为3.141592653,显示3位小数,如下:num = 3.141592653print('{0:.3f}'.format(num))
如果有两个输入num1,num2,要注意位置变化。如下:num1=10num2=20print('num1={0},num2={1}'.format(num1,num2))# 输出:num1=10,num2=20print('num1={1},num2={0}'.format(num1,num2))# 输出:num1=20,num2=10
可以看到,当字符串里的花括号编号顺序变化,对应的变量映射也发生了变化,所以要注意输入顺序。P 3、 f字符串(f-string)
f-string是一种format()字符串的升级版本,通过将变量指标放入花括号的冒号前面,直接绑定变量的位置,避免了format在变量过多情况下的混乱。开发中,推荐使用f字符串,更简洁明了。格式如下:
f-string使用的方法和format()很像,但它应该在字符串前加上“ f ”表明这个字符串是f-string,否则将无法使用。
继续上面的代码,对f-string做一个展示,如下:
print(f'num1={num1},num2={num2}')
可以看到,f字符串的输出更加简洁。同时,它的字符串格式控制方法和format()是一致的,仅仅是格式上的不同,本文不再赘述。
-------------------------它是数字世界里的一把杀猪刀
却总能巧夺天工
它的世界是纯粹0、1组合
却总能创造无尽幻想
......
本公众号关注数据价值分析、编程学习,将不定期更新社会热点数据分析结果、编程技巧,分享数据分析工具、方法、学习等内容,欢迎有兴趣的小伙伴加入。