【发布时间】:2020-01-24 20:48:58
【问题描述】:
我有以下列表,我尝试使用此代码将键的所有第一个字符更改为大写:
listOfNames = {
'tim':1,
'frank':1
}
for name in listOfNames.keys():
name = name.capitalize()
print(name)
我注意到,当我省略变量 name 的赋值时,如下所示:
for name in listOfNames.keys():
name.capitalize()
print(name)
它打印出所有的键而不改变它们。现在,如果我理解正确,name 只是密钥的副本。但是我在那个副本上运行capitalize 方法。为什么我省略name = name.capitalize()时它不返回大写的键?
【问题讨论】:
-
name.capitalize()返回一个新字符串,它不会改变原来的字符串。 -
如果您只是学习基础知识,您可能应该忽略 Python 2,而将时间花在当前推荐和支持的语言版本上,即 Python 3。
-
为了替换密钥,您应该删除旧密钥并创建一个新密钥。
标签: python python-2.7 methods variable-assignment