如何从文件中的三维列表/数组中提取数据以进行计算

2024-04-20 07:46:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含州、每个州的县数以及每个县的降雨量的3D列表文件。比如说

[['Georgia',['county1', 3], ['county2', 1], ['county3', 2]], ['Florida' , ['county1', 0], ['county2', 3]]]

我对每个州都有这样的数据,每个州有不同数量的县。我必须从用户那里获取他们想要从哪个状态获取数据的输入,但是这些状态在我的列表中没有特定的顺序。如何访问程序中的列表,以便提取用户所需状态的数据

我已经制作了3D列表,但真的不知道如何在不进行50次while循环的情况下获取用户输入状态的数据

我希望用户能够输入一个状态,让程序遍历列表,找到用户想要的信息所在的状态,以便打印该信息

前。 输入一个州:佛罗里达州

在佛罗里达州,1号州的降雨量为0英寸,2号州的降雨量为3英寸

编辑: 这项作业我不能用字典


Tags: 文件数据用户程序信息列表状态英寸
1条回答
网友
1楼 · 发布于 2024-04-20 07:46:27

考虑到你有自然键(州名),最好使用字典。在其当前实现中,一种解决方案是迭代数据,直到列表中的第一项与状态匹配。例如:

data = [['Georgia',['county1', 3], ['county2', 1], ['county3', 2]], ['Florida' , ['county1', 0], ['county2', 3]]]

def get_subset(full_data, some_input):
    for item in full_data:
        if item[0].lower() == some_input.lower(): # case insensitive
            return item
    return None

florida = get_subset(data, 'Florida')
print(florida)

收益率:

['Florida', ['county1', 0], ['county2', 3]]

从这里,您应该能够了解如何将数据解释为可打印格式,以满足您的需要

相关问题 更多 >