首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >If循环只检查变量中的第一个数字

If循环只检查变量中的第一个数字
EN

Stack Overflow用户
提问于 2019-02-17 09:14:09
回答 2查看 106关注 0票数 0

当我尝试使用if语句检查一个变量是否大于另一个变量时,if语句只检查第一个数字。例如3>10和30>1,我该如何修复这个问题,以便检查整个变量呢?

我尝试手动设置变量并重新启动Pycharm

代码语言:javascript
复制
Alpha = input("Input first Value:")
Bravo = input("Input second Value:")
Echo = 0
if Alpha >= Bravo:
    Echo += 1
print(Echo)

当Alpha为10,Bravo为3时,Echo应等于1,但实际上等于0

EN

回答 2

Stack Overflow用户

发布于 2019-02-17 09:17:41

您正在比较字符串,而您需要的是数值。使用int()对它们进行转换:

代码语言:javascript
复制
Alpha = int(input("Input first Value:")) 
Bravo = int(input("Input second Value:")) 
.... 
票数 1
EN

Stack Overflow用户

发布于 2019-02-17 09:16:56

您比较的是字符串,而不是数字:

代码语言:javascript
复制
Alpha = int(input("Input first Value:"))
Bravo = int(input("Input second Value:"))
Echo = 0
if Alpha >= Bravo:
    Echo += 1
print(Echo)

可能是Python版本把你搞得一团糟。此代码在Python 2中有效,在Python 2中,对输入的文本执行eval(),但在Python 3中不起作用。对于数字输入,Python 2的input()将返回int,对于字符串输入,将返回错误。Python 3将只返回输入的字符串。(我永远不能理解Python2在这方面行为背后的理性)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54729256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档