python 格式化字符串

在一些程序处理中,我们需要一个字符串数据模版,然后通过变量填充,如:今天气温:18 到22 这就是一个数据模版,温度作为变量。python中提供了str.format()的函数可以实现类型的功能。
示例代码如下:

#使用str.format()函数

#使用'{}'占位符
print('I\'m {},{}'.format('Hongten','Welcome to my space!'))

print('#' * 40)

#也可以使用'{0}','{1}'形式的占位符
print('{0},I\'m {1},my E-mail is {2}'.format('Hello','Hongten','hongtenzone@foxmail.com'))
#可以改变占位符的位置
print('{1},I\'m {0},my E-mail is {2}'.format('Hongten','Hello','hongtenzone@foxmail.com'))

print('#' * 40)

#使用'{name}'形式的占位符
print('Hi,{name},{message}'.format(name = 'Tom',message = 'How old are you?'))

print('#' * 40)

#混合使用'{0}','{name}'形式
print('{0},I\'m {1},{message}'.format('Hello','Hongten',message = 'This is a test message!'))

print('#' * 40)

#下面进行格式控制
import math
print('The value of PI is approximately {}.'.format(math.pi))
print('The value of PI is approximately {!r}.'.format(math.pi))
print('The value of PI is approximately {0:.3f}.'.format(math.pi))


table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}
for name, phone in table.items():
    print('{0:10} ==> {1:10d}'.format(name, phone))


table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}
print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; ''Dcab: {0[Dcab]:d}'.format(table))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 最近在查找资料的时候,发现一篇文章讲解《Python格式化字符串》,文章讲的很透彻,特此转载。 格式化操作符(%)...
    everfight阅读 3,308评论 0 1
  • 在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输入输出。Python中内置有对字...
    古佛青灯度流年阅读 4,068评论 2 0
  • format格式化字符串方法相较于老版%格式方法的优点:1.不需要理会数据类型的问题,在%方法中'%s'只能替代字...
    雷子_阅读 4,997评论 0 1
  • 字符串的输出格式可以由下面的语法进行控制:%[(name)][flag][width][.][precision]...
    Yihulee阅读 3,430评论 0 0
  • (一) 六月眼看就要见底了,今年也过去了一半了。 当然我知道你们在意的不是这些,你们在意的是暑假就要来啦。你们想好...
    耳半阅读 3,114评论 4 3