任何人都可以帮我处理我的代码。 我写了一个小程序,以便我可以学习一些函数和正在发生的事情。 让我告诉你我的代码。
print "Hello student need help multiplying by any mutiplicaton"
student = raw_input("If so then tell me which ones? => ").lower()
for i in range(0, 11):
if student == str(0):
i_num = 0 * i
print "0 times %d equals %d" % (i,i_num)
elif student == str(10):
i_num = 1 * 1
print "1 times %d equals %d" % (i,i_num)
else:
print "Try this program when you can't figure it out your multiplications."
如果学生输入的内容与if语句无关,则会打印其他内容。但是,如果学生输入str(1),它会打印乘法,并且还会打印出我不希望发生的代码问题。谁能帮我。 我只是想学习if和elif以及所有这些的功能。
答案 0 :(得分:1)
else
当前设置为在成功完成for
循环时运行,查看缩进。如果你在循环中移动它一切正常。您的代码确实包含一些语法错误。
修正了您的程序版本:
print "Hello student need help multiplying by any mutiplicaton"
student = raw_input("If so then tell me which ones? => ") # no need for lower()
for i in range(0, 11):
if student == '0':
i_num = 0 * i
print "0 times %d equals %d" % (i,i_num)
elif student == '1':
i_num = 1 * 1
print "1 times %d equals %d" % (i,i_num)
else:
print "Try this program when you can't figure it out your multiplications."
但乘法很容易,所以为什么不这样做呢:
print "Hello student need help multiplying by any mutiplicaton"
num = int(raw_input("If so then tell me which ones? => "))
for i in range(0, 11):
print "%d times %d equals %d" % (num, i, i * num)
答案 1 :(得分:0)
你错过了一个)这里:
elif student == str(10):
答案 2 :(得分:0)
def isAnInt(s):
try:
int(s)
return True
except ValueError:
print "You must enter a number"
print "Hello student need help multiplying by any mutiplicaton"
student = raw_input("If so then tell me which ones? => ")
if(isAnInt(student)):
number_to_calc = int(student)
for i in range(0,11):
i_num = number_to_calc * i
print "%d times %d equals %d" % (number_to_calc, i, i_num)