python 3 不工作

python 3 not working

具体来说,我收到一个类型错误,提示 pow() 函数不接受字符串或整数?

我正在关注此站点的整数代码字符 http://hetland.org/writing/instant-hacking.html

面积计算器功能是我抄下来的。唯一的区别是我按照 Python 句法结构在带有括号的打印语句之后将字符串括起来。我正在使用 Python 版本 3.4.3 和 Linux Mint Ubuntu 16.04.1。我 运行 使用配备 CORE i5 vPro 处理器的旧 HP EliteBook x86_64。

我有很多图片可以帮助解释。 最后一张图片显示,尽管添加 1 作为输入,程序仍会提示输入半径,并在最后给出类型错误。不管我输入什么,它都会跳过 if 语句并直接提示输入半径。我意识到顶部评论中的单词计算器形式存在语法错误。我修好了。

Linux版本:

Python3 版本:

面积计算器代码(评论中拼写错误的单词)

终端错误:

使用radius = int(input("Please enter the radius: ")),因为当前您要求的输入默认为字符串。 int() 函数将其转换为整数。

请参阅 documentation for more details 这个方便的功能。

simon 回答了我的问题。这是代码`` #面积计算程序

print ("Welcome to the area calculation program")
print ("---------------------------------------")
print

# print out the menu:
print ("Please select a shape:")
print ("1 Rectangle")
print ("2 Circle")

# Get the user's choice:
shape = int(input("> "))

# Calculate the area:
if shape == 1:
    height = int(input("Please enter the height: "))
    width = int(input("Please enter the width: "))
    area = height*width
    print ("The area is ", area)
else:
    radius = int(input("Please enter the radius: "))
    area = 3.14*(radius**2)
    print ("The area is ", area)   

答案是在输入函数前面放置一个 int() 函数,这样整数输入就可以被识别。第二个问题是通过将要打印的区域变量放在括号内解决的。谢谢西蒙!