Python2.6 开始,新增了一种格式化字符串的函数 str.format()。使用起来简单方便,不会遇到使用%时候格式的选择问题。
按照参数默认顺序
>>> "yesday is {}, today is {}".format("saturday", "sunday")
'yesday is saturday, today is sunday'
>>>
指定参数顺序
>>> "yesday is {0}, today is {1}, good day is {0}".format("saturday", "sunday")
'yesday is saturday, today is sunday, good day is saturday'
>>>
指定参数名称
#!/usr/bin/python
s = "I am a {name}, and study {subject}".format(name="coder", subject="ES")
print s
output:
I am a coder, and study ES
使用字典做参数
# dict
d = {"name": "coder", "subject": "VUE"}
s = "I am a {name}, and study {subject}".format(**d)
print s
output:
I am a coder, and study VUE
使用列表做参数
# list
l = ["coder", "big data"]
s = "I am a {0}, and study {1}".format(*l)
print s
output:
I am a coder, and study big data
使用对象做参数
class Orange(object):
def __init__(self, v):
self.value = v
orge = Orange(5)
s = "The PH of an orange is {.value}".format(orge)
print (s)
output:
The PH of an orange is 5