如何从功能列表中删除最年轻的人?

时间:2015-05-23 07:35:29

标签: python

我需要一个程序让一个人输入一个人的姓名和他的出生年份(仅限5人)。 这些信息被写入两个列表 - 一个带有名字,另一个带有年份。 然后程序需要删除最年轻的人(或最年轻的人)。 最终结果需要打印在.txt文件中。

这是我到目前为止所做的:

names = []
ages = []


def names_ages():
    while True:
        name_age = input("Enter your name and birth year: ")
        name_age.split()
        print(name_age)

我不知道自己是否朝着正确的方向前进,是否有人会提出建议?

2 个答案:

答案 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

这可能来自许多可能的解决方案。