Python-不带qoutes的数字列表

Python-不带qoutes的数字列表,python,python-3.x,Python,Python 3.x,因此,我有一个文本文件,其中包含“姓名”、“姓氏”、“年龄”和多行数据 我已经能够从文件中提取“年龄”,并能够将其从最年长到最年轻。现在唯一的问题是,我想显示列表中的所有人,但要按从大到小的顺序显示他们的姓名 对于每一行,我也有单独的变量。例如Name1=“John”、“Doe”、“16”。Name2=“Doe”、“John”、“16”。我知道这样做很糟糕,但我不知道该怎么做 而Age=[24,14,16] 我想到 if Age[2] in Name1[2]: #John Doe is

因此,我有一个文本文件,其中包含“姓名”、“姓氏”、“年龄”和多行数据

我已经能够从文件中提取“年龄”,并能够将其从最年长到最年轻。现在唯一的问题是,我想显示列表中的所有人,但要按从大到小的顺序显示他们的姓名

对于每一行,我也有单独的变量。例如Name1=“John”、“Doe”、“16”。Name2=“Doe”、“John”、“16”。我知道这样做很糟糕,但我不知道该怎么做

Age=[24,14,16]

我想到

if Age[2] in Name1[2]:
     #John Doe is 16
但问题是,当我将从文件中提取的点添加到一个列表中时,它显示如下
[14,25,25]
,而不是
[“14”,“25”,“25”]

因为变量上是“25”,年龄列表上是25

这是我第一次在这里发帖,所以如果我的格式错误或者我的帖子毫无意义,我很抱歉。请随时给我留言,我非常乐意进一步解释


谢谢你的阅读,希望你能帮忙。另外,如果您对我的名字硬编码有任何解决方案,请也告诉我。

一个简单的解决方案是将年龄[2]解析为字符串

str(Age[2]) in Name1

由于Name1=“John”,“Doe”,“16”将返回一个元组。因此,“in”运算符可以与Name1一起使用,而无需指定索引。

您可以从文本文件中创建一个数据框,其中包含“Name”、“姓氏”和“Age”列


然后使用数据。对熊猫的值进行排序(按=['Age'],升序=False),这将自动返回所需的结果。

您可以使用dict列表(一个用户一个dict):

要按年龄排列您的DICT列表,您可以使用:

newlist = sorted(users, key=lambda k: k['age']) 

你能从你的文件中提供一些数据样本吗?当然,这是我的文本文件:Claire,Thumb,2 Bobby,Robert,1 Laso,Bob,5欢迎来到SO..谢谢你,已经潜伏了很长时间了感谢你回复
print(str(Age[0])
我打印了这个,它显示了没有引号的数字,所以当我尝试
if str(Age[0])在name1List中:
显示为False。
newlist = sorted(users, key=lambda k: k['age'])