我必须编写一个读取整数的程序并打印出该数字除以2。这是我的代码:
a= int(input("Number: "))
h= a/2
print("Half number: " + h)
但我一直得到这个
Number: 6
Traceback (most recent call last):
File "program.py", line 3, in <module>
print("Half number: " + h)
TypeError: Can't convert 'float' object to str implicitly
我没有看到我的代码有任何问题,我不知道错误是什么。知道什么是错的吗?
答案 0 :(得分:1)
a = int(input(“ Number:”))
h = a / 2
print('半数:',h) 虽然之间没有空格
答案 1 :(得分:0)
表达式:
"Half number: " + h
正在尝试将字符串添加到浮点数。您可以向字符串添加字符串:
"This string" + ", then this string"
并漂浮到花车:
100.0 + 16.8
但Python并不愿意让你添加字符串和浮点数。 (在上面的错误消息中,Python处理了第一个字符串和添加,现在它需要一个字符串 - 这就是为什么你得到它不能 - 或至少赢得的错误&#39 ; t - 将&#39; float&#39;数字转换为字符串。)
您可以通过几种方式告诉Python这是您真正希望它做的事情。一种是使用内置的str()函数将任何对象转换为合理的字符串表示形式,准备添加到另一个字符串中:
h = 100
"You can add a string to this: " + str(h)
答案 2 :(得分:0)
这是一种非常简单的方法。
这是Grok Learning的示例解决方案:
n = int(input('Number: '))
print('Half number:', n/2)
以下是我的解释:
您可能已经猜到了,n
是一个变量。在这段代码中,我们将为n
分配一些信息。 int(input('Number '))
是Python将随后读取并遵循的语句。 int()
告诉Python输入将是一个整数,input()
允许用户输入他们想要输入的任何内容。 n/2
只是说“ n除以2” 的另一种方式。 print()
告诉Python打印一条语句,因此print('Half number:', n/2)
会打印出“半数”只是上面输入的数字的一半。
以下是输出的示例:
Number: 6
Half number: 3
(在该示例中,输入为 6 。)
是的,我知道您可能已经知道这些内容,但是我将这些信息留给将来可能会访问此网站的人。您曾经犯过的错误是您应该使用+
时使用了,
。 Python在处理您所说的内容时非常严格,因此它不允许您使用str
将int
和+
放在一起。因此,下次请记住使用,
。
希望对您有帮助。