Python函数在传递变量而不是numb时失败

2024-10-01 07:48:35 发布

您现在位置:Python中文网/ 问答频道 /正文

有人能解释一下为什么这不起作用吗?当我使用一个数字作为参数时,它是有效的,但是当我使用一个包含数字的变量时,它不起作用

def convertF2C(f):
    c = (f - 32) / 1.8
    return c


num = input("Enter a number to convert:")
print("you entered:",num)
c = convertF2C(**num**)    \\If I use a number as the argument it works.
print(c)

Tags: toyounumberconvertinput参数returnif
3条回答

你需要这样的东西

def convertF2C(f):
    c = (f - 32) / 1.8
    return c


num = int(raw_input("Enter a number to convert:"))
print("you entered:",str(num))
c = convertF2C(num)
print(c)

您需要将参数从str转换为float

num = float(input("Enter a number to convert:"))

input的返回类型是str,它不是数字类型,因此在转换之前不能执行算术

我已经修改了你的代码并进行了测试,现在可以工作了

def convertF2C(f):
    c = (f - 32) / 1.8
    return c


num = input("Enter a number to convert:")
print("you entered:",num)
c = convertF2C(num)    #\\If I use a number as the argument it works.
print(c)

相关问题 更多 >