【问题标题】:How to add strings and text into an input in Python?如何在 Python 中将字符串和文本添加到输入中?
【发布时间】:2018-09-04 09:39:26
【问题描述】:

代码如下:

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

有什么帮助吗?谢谢。

【问题讨论】:

  • 将参数作为一行传递给input。只需将, 替换为+。像这样:input("Please enter " + name1 + "'s age: ").

标签: python string input printing


【解决方案1】:

您需要使用+ 进行字符串连接。见下文:

name1 = input("Please enter a name: ")
name1age = int(input("Please enter " + name1 + "'s age: "))

这将三个字符串元素连接/连接为一个并将其传递给输入函数。

更多信息可以在here找到。

【讨论】:

  • 对我来说很好,请确保您已正确复制和粘贴。
【解决方案2】:

其他选择:

你可以使用字符串format方法:

name4 = input("Please enter a name ")
name4age = int(input("Please enter {}'s age: ".format(name4)))

或者你正在使用python 3.6+的f-strings:

name4 = input("Please enter a name ")
name4age = int(input(f"Please enter {name4}'s age: "))

string formatting 也可以使用模运算符 (%),但 IMO 格式更好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-25
    • 2022-11-17
    • 2012-09-14
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 2021-07-08
    相关资源
    最近更新 更多