python - 将变量(字母和数字)组合成python中的问题
问题描述
我正在做作业。它是什么并不重要——这个问题应该很简单。我需要做一个随机生成的问题。为此,我的代码是:
num1 = (random.randint(0,12))
num2 = (random.randint(0,12))
question = (num1 + "" + "+" + "" + num2)
print(question)
我得到错误:
question = (num1 + "" + "+" + "" + num2)
TypeError: unsupported operand type(s) for +: 'int' and 'str'
我想我明白问题是什么,但我不知道如何解决它。如果有任何帮助,我将不胜感激。我正在使用 python-idle 3.8
解决方案
您正在尝试添加int
with str
,这是不允许的,您可以通过以下方式解决此问题:
>>> num1 = (random.randint(0,12))
>>> num2 = (random.randint(0,12))
>>> question = (str(num1) + "" + "+" + "" + str(num2))
# or for python 3.6+ use f-strings [1]
>>> question = f"{num1} + {num2}"
此外,如果您要添加""
,这是没有用的,因为它们是空字符串。相反,要么使用" "
,要么将其添加到+
运算符本身,例如:" + "
。
参考:
推荐阅读
- ios - 如何使用 swiftUI 更改键盘以反映段选择的输入类型?
- microsoft-graph-api - 图形订阅测试版 - AdditionalData
- python-3.x - 为pygame项目随机化背景音乐
- flutter - 在颤振应用程序中获取浮动操作按钮错误
- angular - 为什么没有调用函数?(在 Ionic & Angular 框架中)
- reactjs - 如何将数字作为道具传递给样式化组件?
- laravel - Laravel 助手
- java - 为什么这个 JAVA 端点没有向客户端返回详细的错误消息?
- python - 如何从先前分配的索引中获取值
- reactjs - 从 Blazor 服务器调用 React App.Render