我需要一个程序让一个人输入一个人的姓名和他的出生年份(仅限5人)。 这些信息被写入两个列表 - 一个带有名字,另一个带有年份。 然后程序需要删除最年轻的人(或最年轻的人)。 最终结果需要打印在.txt文件中。
这是我到目前为止所做的:
names = []
ages = []
def names_ages():
while True:
name_age = input("Enter your name and birth year: ")
name_age.split()
print(name_age)
我不知道自己是否朝着正确的方向前进,是否有人会提出建议?
答案 0 :(得分:0)
我将假设您期望名字和年份被这样的空间隔开。
"andrew 1996"
如果是这样,你将要在空间上分割输入(使第一个条目对应于“andrew”,第二个条目对应于“1996”
response = name_age.split(" ")
现在您可以将这些值添加到您在上面定义的数组中(或者您可以使用我认为更适合此问题的python字典)https://docs.python.org/2/tutorial/datastructures.html#dictionaries
names.append(response[0])
ages.append(int(response[1]))
你将不得不决定何时停止接受名字,你将把它放在你的while循环条件中(现在它永远在运行)也许等到用户输入是“停止”或那种性质的东西。 / p>
这应该让你朝着正确的方向前进,如果你有任何问题请发表评论
答案 1 :(得分:0)
name = []
year = []
x=0
while x <3:
x += 1
user = name.append(raw_input("enter name"))
user_year = year.append(raw_input("enter DOB"))
o = []
for i in zip(year,name):
o.append(i)
o.sort()
o.remove(o[0])
print o
这可能来自许多可能的解决方案。