如何返回列表中某些行的第一个元素



如何在python程序中返回第一行和最后一行的第一个元素

例如,

Bahrain,1701575,0.0368,60403,760,Asia
Timor-Leste,1318445,0.0196,25326,14870,Asia
Cyprus,1207359,0.0073,-8784,9240,Asia
Bhutan,771608,0.0112,8516,38117,Asia
Macao,649335,0.0139,8890,30781,Asia
Maldives,540544,0.0181,9591,300,Asia

如何返回巴林和马尔代夫。

我不知道从哪里开始。

我已经根据人口降序对国家进行了排序,现在我需要返回人口最少和最多的国家的名称

这里有一个简单的方法:

  1. readlines读取文件中的所有行到列表中。
  2. 选择列表的第一行和最后一行。
  3. 提取以下两行中每一行的第一个元素:line.split(',')[0]
  4. 完成了!

你可以这样做:

data = """
Bahrain,1701575,0.0368,60403,760,Asia
Timor-Leste,1318445,0.0196,25326,14870,Asia
Cyprus,1207359,0.0073,-8784,9240,Asia
Bhutan,771608,0.0112,8516,38117,Asia
Macao,649335,0.0139,8890,30781,Asia
Maldives,540544,0.0181,9591,300,Asia
"""
data = data.strip() # remove whitespace
data = data.split("n") # split rows
data = [sublist.split(",") for sublist in data] # split every row
print(data[0][0])
print(data[-1][0])

打印:

Bahrain
Maldives

此代码将data存储为字符串,然后将该字符串转换为矩阵。然后,它找到第一行和最后一行的第一个元素。但是,您可以索引这个矩阵中的任何数据。

然而,如果你只是想要得到第一个和最后一个列表的第一项,那么你可以这样做:

data = """
Bahrain,1701575,0.0368,60403,760,Asia
Timor-Leste,1318445,0.0196,25326,14870,Asia
Cyprus,1207359,0.0073,-8784,9240,Asia
Bhutan,771608,0.0112,8516,38117,Asia
Macao,649335,0.0139,8890,30781,Asia
Maldives,540544,0.0181,9591,300,Asia
"""
data = data.strip().split("n") # remove whitespace and split into rows
print(data[0].split(",")[0])
print(data[-1].split(",")[0])

输出相同的内容