这是代码:
name1 = input("Please enter a name: ")
name1age = int(input("Please enter ", name1, "'s age: "))
name2 = input("Please enter a name: ")
name2age = int(input("Please enter ", name2, "'s age: "))
name3 = input("Please enter a name: ")
name3age = int(input("Please enter ", name3, "'s age: "))
name4 = input("Please enter a name ")
name4age = int(input("Please enter ", name4, "'s age: "))
我希望为名称指定的值是新输入的一部分。
这是我收到的错误:
Traceback (most recent call last):#
File "\\albyn-sch\data\PupilHome\A.Shahrivar\My Documents\Computing
Science\Python\Dance Group.py", line 2, in <module>
name1age = int(input("Please enter ", name1, "'s age: "))
TypeError: input expected at most 1 arguments, got 3
有帮助吗?谢谢。
你需要使用+
进行字符串连接。见下文:
name1 = input("Please enter a name: ")
name1age = int(input("Please enter " + name1 + "'s age: "))
这将三个字符串元素连接/连接成一个,并将其传递给输入函数。
更多信息可以在here找到。
其他替代品:
你可以使用字符串format
方法:
name4 = input("Please enter a name ")
name4age = int(input("Please enter {}'s age: ".format(name4)))
或者你使用python 3.6+的f字符串:
name4 = input("Please enter a name ")
name4age = int(input(f"Please enter {name4}'s age: "))
您也可以使用模数运算符(%
)来表示string formatting,但IMO格式更好。