读取CSV fi时跳过行并选择错误的单元格

2024-03-29 02:09:36 发布

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

所以我有一个csv文件,里面有很多游戏和关于它们的信息,我试图保存游戏的发行商和ESRB评级。但由于某些原因,当我打印出来时,它会随机跳过游戏,选择错误的单元格

我的代码:

def simpleLoop(file_name):
output = []
input_file = open(file_name, "r")
for line in input_file:
    cells = line.split(",")
    output.append((cells[7], cells[13]))
i = 0
while (i <= 10):
    print(output[i]) # testing what values i get
    i += 1

Screenshot of csv

Output

Expected Output

感谢您的帮助,谢谢

编辑:在SimoN的帮助下解决

对于其他面临类似问题的人,请确保准确指定要拆分的位置。在我的例子中,我用逗号分开,但在一些单元格中有逗号。为了解决这个问题,我改变了:

cells = line.split(",")

cells = line.split('","')

这使得python在每个单元格后分割,因为单元格以双引号结束,然后是逗号,下一个单元格以双引号开始


Tags: 文件csvname信息游戏inputoutputline
1条回答
网友
1楼 · 发布于 2024-03-29 02:09:36

在一些单元格中有逗号,您正在拆分这些单元格。当您在Excel中打开CSV(或您使用的任何工具)时,它知道不要对这些文件进行拆分,因为它们被引号包围。我建议使用PythonCSV模块,这样您也可以这样做

相关问题 更多 >