[英]Set raw_input answer as pre-defined variable
新手在這里。
我想讓Python查看變量(在這種情況下,john,clark和bruce)並吐出那些數組中的字符串,但我沒有運氣弄清楚如何。 這是我正在研究的例子:
names = ("john", "clark", "bruce")
john = ("doe", "13-apr-1985")
clark = ("kent", "11-jan—1987")
bruce = ("wayne", "05-sep-1988")
user = raw_input("What is your name?")
if user in names:
print "Your last name is: " + ????[0]
print "Your date of birth is: " + ????[1]
else:
print "I don’t know you."
問號是我被困的地方。 我不知道如何將兩者聯系在一起。 我希望我的問題不會太混亂。
你可以使用字典:
names = {
"john": {
"last_name": "doe",
"date_of_birth": "13-apr-1985"
},
}
user = raw_input("What is your name?")
if user in names:
print "Your last name is: " + names[user]["last_name"]
print "Your date of birth is: " + names[user]["date_of_birth"]
else:
print "I don’t know you."
請注意,當多個人具有相同的名字時,此方法不起作用。 在這種情況下,您需要調整數據結構以相應地處理(並且您需要決定當某人填寫"john"
時您將顯示哪些結果)。
使用字典將名字映射到您擁有的元組。
names = { "john": (“doe”, “13-apr-1985”),
"clark": (“kent”, “11-jan—1987”),
"bruce": (“wayne”, “05-sep-1988”)}
user = raw_input(“What is your name?”)
if user in names.keys():
print “Your last name is: “ + names[user][0]
print “Your date of birth is: “ + names[user][1]
else:
print “I don’t know you.”
為了使這更加pythonic和更容易使用,創建一個嵌套字典:
names = { "john": {"last": “doe”, "birthdate": “13-apr-1985”},
"clark": {"last": “kent”, "birthdate": “11-jan—1987”},
"bruce": {"last": “wayne”, "birthdate": “05-sep-1988”}}
user = raw_input(“What is your name?”)
if user in names.keys():
print “Your last name is: “ + names[user]["last"]
print “Your date of birth is: “ + names[user]["birthdate"]
else:
print “I don’t know you.”
作為旁注,您可能希望在輸入時修剪輸入中的任何前導空格。
...
user = raw_input(“What is your name?”)
user = user.strip()
if user in names.keys():
...
你應該在這里使用dict
,就像這樣
d = {"john" : ("doe", "13-apr-1985"),
"clark" : ("kent", "11-jan-1987"),
"bruce" : ("wayne", "05-sep-1988")}
...
...
if user in d:
print “Your last name is: “ + d[user][0]
print “Your date of birth is: “ + d[user][0]
else:
print “I don’t know you.”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.