对于一个项目,我需要有一个程序询问一个比赛名称,在另一个问题中使用该名称
以下守则有效
主要问题是我需要将输入的时间作为值保存并保存,以便稍后进行计算,但打印成time = """""
行,不起作用。
关于如何解决这个问题的任何建议?
def main():
print "~*~*~*~*~*~ Timbuktu Archery Contest ~*~*~*~*~*~"
archerList = [] #list
name = raw_input ("Enter contestants first name: ")
s = str(name)
archerList.append(name)
print "Enter time (in milliseconds) for " + s , raw_input (": ")
main()
答案 0 :(得分:3)
我认为你需要做
t = raw_input ("Enter time (in milliseconds) for %s :" % s)
答案 1 :(得分:1)
对于raw_input
,返回一个字符串值,
因此x = raw_input()
会将用户输入内容的字符串分配给x
有关raw_input
的文档,请参阅this
对于您的弓箭手列表,您可能希望使用字典,然后您可以使用射手的名称访问“时间”。
有关字典文档,请参阅here
你可以使用这样的词典:
def main():
print "~*~*~*~*~*~ Timbuktu Archery Contest ~*~*~*~*~*~"
archers = {}
while True: # get inputs till user inputs empty string.
name = raw_input ("Enter contestants first name: ")
if name == '':
break
while True: # get input till ttime can be converted to an int.
ttime = raw_input ("Enter time (in milliseconds) for %s :" % name)
try:
ttime = int(ttime)
except ValueError: # error handling
print 'Invalid input, Enter a number'
else:
break
archers[name] = ttime # assign values to the dictionary
return archers # return dictionary value