首页  >  文章  >  后端开发  >  为什么我在访问列表元素时收到'TypeError:列表索引必须是整数或切片,而不是 str”错误?

为什么我在访问列表元素时收到'TypeError:列表索引必须是整数或切片,而不是 str”错误?

Barbara Streisand
Barbara Streisand原创
2024-11-21 00:46:23726浏览

Why am I getting the

TypeError: 列表索引必须是整数或切片,而不是 str

尝试使用字符串访问列表元素时会发生此错误索引。在您的代码中,您尝试使用 i 访问 result_array 中的元素,i 是表示 array_dates 长度的字符串。

解决方案:

要解决此问题,您需要:

  1. 将 array_length 转换为整数:

    array_length = len(array_dates)
  2. 使用 range() 函数迭代整数到 array_length。删除 i 的手动增量。

    for i in range(array_length):
        # Your code here
  3. 或者,您可以压缩 array_dates 和 array_urls 列表,因为它们具有相同的长度:

    result_array = zip(array_dates, array_urls)

然后,使用 writerows 方法将 result_array 行写入 CSV 文件。

使用 zip() 方法的示例:

import csv

def fill_csv(array_urls, array_dates, csv_file_path):
    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(array_dates, array_urls)
        csv_file.writerows(result_array)

以上是为什么我在访问列表元素时收到'TypeError:列表索引必须是整数或切片,而不是 str”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

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