python 比较大小
答案:4 悬赏:80 手机版
解决时间 2021-03-23 13:54
- 提问者网友:杀生予夺
- 2021-03-22 18:37
python 比较大小
最佳答案
- 五星知识达人网友:从此江山别
- 2021-03-22 19:21
注意比较字符串和比较数字不一样,需要手动将字符串转换为整数。
字符串比较不看数字大小,而是看字符的ascii码顺序。raw_input得到的数据是字符串,字符串3其实是大于字符串21的。所以这里如想正确比较,就必须把字符串转为数字。
我修改了你的程序:
def printMax(a, b):
if a > b:
print a, 'is maximum'
else:
print b, 'is maximum'
#printMax(3, 4) # directly give literal values
x = int(raw_input("x"))
y = int(raw_input("y"))
printMax(x, y) # give variables as arguments
望采纳,请按下面评论的时间采纳,谢谢支持!
字符串比较不看数字大小,而是看字符的ascii码顺序。raw_input得到的数据是字符串,字符串3其实是大于字符串21的。所以这里如想正确比较,就必须把字符串转为数字。
我修改了你的程序:
def printMax(a, b):
if a > b:
print a, 'is maximum'
else:
print b, 'is maximum'
#printMax(3, 4) # directly give literal values
x = int(raw_input("x"))
y = int(raw_input("y"))
printMax(x, y) # give variables as arguments
望采纳,请按下面评论的时间采纳,谢谢支持!
全部回答
- 1楼网友:长青诗
- 2021-03-22 21:39
raw_input()返回的是字符串
- 2楼网友:平生事
- 2021-03-22 20:26
# another idea:
def maxium(*args):
return max(args)
def getInteger(prompt):
while 1:
try:
return int(raw_input(prompt))
except:
continue
print maxium(3,4)
print "max is:", maxium(getInteger("x:"), getInteger("y:"))
def maxium(*args):
return max(args)
def getInteger(prompt):
while 1:
try:
return int(raw_input(prompt))
except:
continue
print maxium(3,4)
print "max is:", maxium(getInteger("x:"), getInteger("y:"))
- 3楼网友:一袍清酒付
- 2021-03-22 19:37
x = raw_input("x");
y = raw_input("y");
得到的x和y是字符串string类型的,字符串比较是按字符比较的,'3'比'2'大
按照你的意图应该是把输入转换为int型变量才能比较,
可以改为
x = int(raw_input("x"))
y = int(raw_input("y"))
还有提醒你一下,python里面语句结束是没有分号的
y = raw_input("y");
得到的x和y是字符串string类型的,字符串比较是按字符比较的,'3'比'2'大
按照你的意图应该是把输入转换为int型变量才能比较,
可以改为
x = int(raw_input("x"))
y = int(raw_input("y"))
还有提醒你一下,python里面语句结束是没有分号的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯