下面我有一个脚本,我在尝试完成我的作业时已经完成了。
脚本要做的是询问用户2个输入,然后返回更多的输入。 (这我还没想到)
这项任务的重点是看到如果我不输入2个数字,输入两个单词“Hej”和“Hå”,会发生什么。
我需要一些建议是如何启用此脚本以接受2个用户输入并返回其中两个更大的输入。
def maximum(x, y):
i = 0
maxnra = 0
maxnrb = 0
while i < len(x) :
if x[i] > maxnra:
maxnra = x[i]
i = i + 1
else:
i = i + 1
print "I första ordet är maximum: ", maxnra
i = 0
while i < len(y) :
if y[i] > maxnrb:
maxnrb = y[i]
i = i + 1
else:
i = i + 1
print "I andra ordet är maximum: ", maxnrb
maximum("hej", "hå")
编辑:
我尝试用另一种方式解决这个问题,这是解决这个问题的方法吗?
print "First"
x = input()
print "Second"
y = input()
def printMax(x, y):
if x > y:
print(x, 'is maximum')
elif a == b:
print(x, 'is equal to', y)
else:
print(y, 'is maximum')
现在我错过了一些东西,因为当我输入2个值时它没有返回任何东西。
答案 0 :(得分:1)
阅读命令raw_input上的文档,了解如何从用户那里获得输入。
答案 1 :(得分:1)
如果您只是想从终端窗口获取用户输入的简单方法,请查看raw_input函数。
答案 2 :(得分:0)
您的第一个代码只需要两个列表并打印每个列表的最大值。所以,这不是你想要的。
在第二个代码中,虽然方法是正确的,但你犯了一些小错误。
print "First"
x = input() # use raw_input() for python 2.7
print "Second"
y = input()
def printMax(x, y):
if x > y:
print(x, 'is maximum')
elif x == y:
# not a==b
print(x, 'is equal to', y)
else:
print(y, 'is maximum')
实际上,当您在此代码中输入输入时,虽然您输入数字,但它们仍被视为字符串。因此,如果输入字符串,则没有太大区别。
使用(ASCII值顺序)按字典顺序比较这些字符串。由于您的输入不是来自ASCII,因此会显示错误。
因此,您需要使用以下
替换input()
或raw_input(
)
import sys # do this at the top of program.
x = raw_input().decode(sys.stdin.encoding)
# similarly do it for y
请阅读以下stackoverflow问题以了解有关此link
的更多信息