str.format()选项无效

5

以下代码来自教程:

def main():
    stri = "Hello, {person}"
    stri.format(person="James")
    print(stri) #prints "Hello, {person}"

为什么 format() 没有起作用?
1个回答

14

它是有效的。你只是没有将格式分配给变量,然后只是打印原始字符串。请参见以下示例:

>>> s = 'hello, {person}'
>>> s
'hello, {person}'
>>> s.format(person='james')
'hello, james'                    # your format works
>>> print s                       # but you did not assign it
hello, {person}                   # original `s`
>>> x = s.format(person='james')  # now assign it
>>> print x 
hello, james                      # works!

为什么你在每行开头打上 ">>>"? - Netherwire
@Netherwire表示这是输入。没有此标识的行则代表输出。 - Mitchell van Zuylen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接