ホームページ > バックエンド開発 > Python チュートリアル > リスト要素にアクセスすると「TypeError: リスト インデックスは str ではなく、整数またはスライスである必要があります」エラーが発生するのはなぜですか?

リスト要素にアクセスすると「TypeError: リスト インデックスは str ではなく、整数またはスライスである必要があります」エラーが発生するのはなぜですか?

Barbara Streisand
リリース: 2024-11-21 00:46:23
オリジナル
802 人が閲覧しました

Why am I getting the

TypeError: リストのインデックスは str ではなく、整数またはスライスである必要があります

このエラーは、文字列を次のように使用してリスト要素にアクセスしようとすると発生します。インデックス。コードでは、array_dates の長さを表す文字列である i を使用して result_array 内の要素にアクセスしようとしています。

解決策:

この問題を解決するには

  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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート