我正在练习如何使无聊的东西自动化,我想知道第3行上的str(len(catNames)的目的是什么,它将在用户输入数据后仅添加一个数字,例如输入猫2,3等的名字吗?谢谢!
catNames = []
while True:
print('Enter the name of cat ' + str(len(catNames) + 1) + ' (Or enter nothing to stop.):')
name = input()
if name == '':
break
catNames = catNames + [name] # list concatenation
print('The cat names are:')
for name in catNames:
print(' ' + name)
答案 0 :(得分:3)
在python中,您无法连接整数和字符串,因此在上面的示例中len(catNames))返回一个整数,即列表catNames的长度。因此,为了将其与其他字符串连接起来,即“输入cat的名称”,您必须使用str()
函数将整数转换为字符串
答案 1 :(得分:2)
为了将字符串和数字连接在一起,必须首先将数字转换为字符串。因此,命令str(len(catNames) + 1)
很简单:1)询问catNames的长度是多少,并将1加到这个数字上; 2)将该数字转换为字符串。希望这会有所帮助。
答案 2 :(得分:2)
在用户输入数据(例如,输入猫2,3等的名称
完全正确。 str
会将其转换为字符串(而不是整数),因为作者想进行字符串连接,而不是算术加法。