Home > Backend Development > Python Tutorial > Why am I getting the 'TypeError: list indices must be integers or slices, not str' error when accessing list elements?

Why am I getting the 'TypeError: list indices must be integers or slices, not str' error when accessing list elements?

Barbara Streisand
Release: 2024-11-21 00:46:23
Original
781 people have browsed it

Why am I getting the

TypeError: list indices must be integers or slices, not str

This error occurs when attempting to access a list element using a string as the index. In your code, you're trying to access elements in result_array using i, which is a string representing the length of array_dates.

Solution:

To resolve this issue, you need to:

  1. Convert array_length to an integer:

    array_length = len(array_dates)
    Copy after login
  2. Use the range() function to iterate over the integers up to array_length. Remove the manual increment of i.

    for i in range(array_length):
        # Your code here
    Copy after login
  3. Alternatively, you could zip the array_dates and array_urls lists since they have the same length:

    result_array = zip(array_dates, array_urls)
    Copy after login

Then, write the result_array rows to your CSV file using the writerows method.

Example using the zip() method:

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)
Copy after login

The above is the detailed content of Why am I getting the 'TypeError: list indices must be integers or slices, not str' error when accessing list elements?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template