Python中字符串的格式化方法小结
更新时间:2016年05月03日 17:49:14 作者:larry
这篇文章主要介绍了Python中字符串的格式化方法小结,提到了针对Python2.x与3.x版本相异情况下的不同技巧,需要的朋友可以参考下
老办法
Python2.6之前,格式字符串的使用方法相对更简单些,虽然其能够接收的参数数量有限制。这些方法在Python3.3中仍然有效,但已有含蓄的警告称将完全淘汰这些方法,目前还没有明确的时间进度表。
格式化浮点数:
pi = 3.14159
print(" pi = %1.2f ", % pi)
多个替换值:
s1 = "cats" s2 = "dogs" s3 = " %s and %s living together" % (s1, s2)
没有足够的参数:
使用老的格式化方法,我经常犯错"TypeError: not enough arguments for formating string",因为我数错了替换变量的数量,编写如下这样的代码很容易漏掉变量。
set = (%s, %s, %s, %s, %s, %s, %s, %s) " % (a,b,c,d,e,f,g,h,i)
对于新的Python格式字符串,可以使用编号的参数,这样你就不需要统计有多少个参数。
set = set = " ({0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}) ".format(a,b,c,d,e,f,g)
Python 2.x 基于字典字符串格式化
"%(n)d %(x)s" %{"n":1, "x":"spam"}
reply = """
Greetings...
Hello %(name)s!
Your age squared is %(age)s
"""
values = {'name':'Bob', 'age':40}
print rely % values
Python 3.x format方法格式化
template = '{0},{1} and {2}'
template.format('spam','ham','eggs')
template = '{motto}, {pork} and {food}'
template.format(motto='spam', pork='ham', food='eggs')
template = '{motto}, {0} and {food}'
template.format('ham', motto='spam', food='eggs')
'{motto}, {0} and {food}'.format(42, motto=3.14, food=[1,2,3])
相关文章
解决python 读取excel时 日期变成数字并加.0的问题
这篇文章主要介绍了python 读取excel时, 日期变成数字并加.0的问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-10-10


最新评论