我正在尝试解析包含印度城市密码的csv文件。我想要文件中的特定行。

当我尝试这样做时,它就像魅力一样工作:

pinfile = open('pincodes.csv', 'r')

csv_file = csv.reader(pinfile)

for i, row in enumerate(csv_file):
    if i == 67208:
        x = " ".join(row)
        print(x)

pinfile.close()


结果:


  Padlya B.O 451220 B.O Delivery Khandwa Indore Madhya Pradesh Maheshwar West Nimar MADHYA PRADESH


但是,当我在两者之间添加一行以计算文件中的行数时,for循环不会执行:

pinfile = open('pincodes.csv', 'r')

totalrow = sum(1 for row in pinfile)  # To calculate number of rows

csv_file = csv.reader(pinfile)

for i, row in enumerate(csv_file):
    if i == 67208:
        x = " ".join(row)
        print(x)

pinfile.close()


没有结果显示。

请帮忙。我搜索了整个论坛,但找不到与此类似的内容。

最佳答案

您的求和迭代将读取到文件的末尾,因此没有任何内容可供csv读取。在创建阅读器之前,将文件重置为以pinfile.seek(0)开头。

07-26 00:41