Python 我有一个If语句,它不是';I don’我也没有表现得像我期望的那样,也许我';我把它叠错了?
我有一个if/then语句,它的行为不是这样的。我的专业水平约为1/10Python 我有一个If语句,它不是';I don’我也没有表现得像我期望的那样,也许我';我把它叠错了?,python,python-3.x,python-2.7,Python,Python 3.x,Python 2.7,我有一个if/then语句,它的行为不是这样的。我的专业水平约为1/10 我试图获取一个用户输入值并给出一个变量输出 取决于值 我的脚本给了我10,每个函数返回5,这是错误的 我想让它吐出正确的值,比如3和4,总共7。 但是,它总是打印出5和5,总共10,我不知道为什么 raw_input()和input()处理事情的方式不同,因此当我使用raw_input()而不是input()时,它对代码的更改足以让我失败。 我不知道它为什么这样做,但它确实这样做了。我猜您没有使用Python3,因
- 我试图获取一个用户输入值并给出一个变量输出 取决于值李>
- 我的脚本给了我10,每个函数返回5,这是错误的
但是,它总是打印出5和5,总共10,我不知道为什么 raw_input()和input()处理事情的方式不同,因此当我使用raw_input()而不是input()时,它对代码的更改足以让我失败。
我不知道它为什么这样做,但它确实这样做了。我猜您没有使用Python3,因为Python3中的
raw\u input
刚刚重命名为input()
。当我尝试使用input()
运行代码时,出现了一系列问题,因为您正在将字符串值(input()
返回字符串)与整数值(例如120)进行比较
请尝试暂时解决此问题,并向我们通报您的新结果。:) 如果你弄明白了,你也可以删除你的问题……“raw_input()”和“input()”显然处理事情的方式不同。”-在Python 2中,它们是。在Python 3中,
raw_input
被重命名为input
,旧的input
函数被删除。为什么不使用elif
而不是嵌套的if/else呢?它可能会被关闭,但在未来,请格式化问题,使读者能够有效地理解你想问什么。
def abs_func():
plank_input = raw_input("How long can you hold a plank?:")
situps_input = raw_input("How many situps can you do?:")
#checking the input we just recieved
print "Plank Input:",plank_input
print "Situps Input:",situps_input
#This Checks the plank time against my values.
def abs_char1(plank):
global abs_rate1
if plank >= 120:
abs_rate1 =+ 5
else:
if plank >= 90:
abs_rate1 =+ 4
else:
if plank >= 60:
abs_rate1 =+ 3
else:
abs_rate1 =+ 2
print "Abs 1:",abs_rate1
return abs_rate1
#This Checks the plank time against my values.
def abs_char2(situps):
global abs_rate2
if situps >= 120:
abs_rate2 =+ 5
else:
if situps >= 100:
abs_rate2 =+ 4
else:
if situps >= 80:
abs_rate2 =+ 3
else:
abs_rate2 =+ 2
print "Abs 2:", abs_rate2
return abs_rate2
a1 = abs_char1(plank_input)
a2 = abs_char2(situps_input)
print "a1:",a1,"a2:",a2
abs_rate = a1 + a2
print abs_rate
abs_func()