首页 >后端开发 >Python教程 >将列表合并到 CSV 时,为什么我会收到'TypeError:列表索引必须是整数或切片,而不是 Str”?

将列表合并到 CSV 时,为什么我会收到'TypeError:列表索引必须是整数或切片,而不是 Str”?

Barbara Streisand
Barbara Streisand原创
2024-12-01 21:12:12218浏览

Why Am I Getting

TypeError: List Indices Must Be Integers or Slices, Not Str

在此错误中,您遇到合并两个索引的代码问题列表到数组中并将其写入 CSV 文件。该错误消息表明您正在尝试使用字符串对列表进行索引,这是不允许的。

要解决此问题,请按照提供的解决方案中概述的步骤操作:

  1. 转换array_length 为整数。不要使用 array_length = str(len(array_dates)),而是使用 array_length = len(array_dates)。
  2. 在 for 循环中使用 range 函数。使用 for i in range(array_length) 代替 for i in array_length。
  3. 删除增量线 i = 1,因为它会自动递增。

使用的替代方法Zip:

您可以利用Python的zip函数来代替您使用的方法将两个列表的元素组合成对,然后可以直接写入 CSV 文件。

import csv

dates = ['2020-01-01', '2020-01-02', '2020-01-03']
urls = ['www.abc.com', 'www.cnn.com', 'www.nbc.com']

csv_file_patch = '/path/to/filename.csv'

with open(csv_file_patch, 'w') as fout:
    csv_file = csv.writer(fout, delimiter=';', lineterminator='\n')
    result_array = zip(dates, urls)
    csv_file.writerows(result_array)

通过实施这些更改,您可以合并列表并将生成的数组写入 CSV 文件没有遇到类型错误。

以上是将列表合并到 CSV 时,为什么我会收到'TypeError:列表索引必须是整数或切片,而不是 Str”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn