gpt4 book ai didi

python - 在 Python 101 中解析 CSV

转载 作者:行者123 更新时间:2023-11-28 22:43:24 25 4
gpt4 key购买 nike

我试图通过 dataquest.io 的培训类(class)理解/可视化在 Python 中解析原始 csv 数据文件的过程。

我知道 rows = data.split('\n') 根据换行符的位置将长字符串的 csv 文件拆分成行。即:

day1, sunny, \n day2, rain \n

成为

day1, sunny
day2, rain

我认为 for 循环会进一步将数据分解成如下内容:

day 1 
sunny
day 2
rain

相反,该类(class)似乎暗示它实际上会成为有用的列表列表。我不明白,为什么会这样?

weather_data = []

f = open("la_weather.csv", 'r')
data = f.read()
rows = data.split('\n')
for row in rows:
split_row = row.split(",")
weather_data.append(split_row)

最佳答案

我忽略了 CSV 内容,只关注您对列表的误解。当您拆分文本行时,它会变成一个字符串列表。也就是说,rows 变为:["day1, sunny","day2, rain"]

应用于列表的for 语句遍历该列表的元素。因此,第一次通过 row 将是 "day1, sunny",第二次通过它将是 "day2, rain",等等

在 for 循环的每次迭代中,它通过将逗号处的行拆分为例如 ["day1","sunny"] 来创建一个新列表。所有这些列表都添加到您在开始时创建的 weather_data 列表中。您最终得到一个列表列表,即 [['day1', 'sunny'], ['day2', 'rain']]。如果你想要['day1', 'sunny', 'day2', 'rain'],你可以这样做:

for row in rows:
split_row = row.split(",")
for ele in split_row:
weather_data.append(ele)

关于python - 在 Python 101 中解析 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30799430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com