TypeError:列表索引必须是整数或切片
尝试将两个列表合并到单个数组时,出现“TypeError:列表索引必须是整数或切片,而不是 str” 错误可能会发生。此错误表示尝试使用非整数值(即字符串)访问列表项。
在提供的代码示例中,需要进行以下调整才能解决此错误:
array_length = len(array_dates)
此行确保 array_length 包含表示 array_dates 列表长度的整数值。
for i in range(array_length):
for 循环应该使用 range 函数来迭代 array_dates。这将在每次迭代期间自动增加 i。
# Remove this line # i += 1
因为 i 会根据范围自动增加, i = 1 行是不必要的,应该删除。
替代方案方法:使用 zip 函数
或者,您可以使用 zip 函数来组合两个列表,因为它们具有相同的长度:
import csv dates = ['2020-01-01', '2020-01-02', '2020-01-03'] urls = ['www.abc.com', 'www.cnn.com', 'www.nbc.com'] csv_file_path = '/path/to/filename.csv' with open(csv_file_path, 'w') as fout: csv_file = csv.writer(fout, delimiter=';', lineterminator='\n') result_array = zip(dates, urls) csv_file.writerows(result_array)
以上是为什么我在合并列表时收到'TypeError:列表索引必须是整数或切片,而不是 str”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!