私はこの1日、非常に単純な(しかしイライラするほど難しい)問題を解決するのに苦労してきました。私は現在、csvリーダーを使用してcsvファイルを行ごとにループするコードを持っています。以前に同じループを使用して成功したので、ループは問題ではありません。それは私のifステートメントの問題のようです。
サンプルは次のとおりです。
if 'INCORRECT_KEY_PRESSED' and 'rad_mod_KA_0043-lo-mod' in row:
userAnswerColumn.append(row[20])
userRtColumn.append(row[21])
INCORRECT_KEY_PRESSED
このステートメントは、行にフレーズとが含まれている場合、行の特定の場所からの値を含む2つのリストを追加することになっていますrad_mod_KA_0043-lo-mod
。私はそのようなステートメントをいくつか持っていますが、行にこれらのフレーズの両方が2回以上含まれることはありません。のようなフレーズrad_mod_KA_0043-lo-mod
は常にユニークですが、INCORRECT_KEY_PRESSED
何度も発生します。
ifステートメントは、各リストに複数のデータを追加しているため、私の条件の1つのみを使用しているようです。
私は過去にこの問題を抱えていましたが、セットを作成して次のようなことを行うことで問題を解決しました。
if (all(x in row for x in ssSet) and row[14] == '7'):
ssColumn7.append(row[20])
ssRtColumn7.append(row[21])
しかし、非常に多くのユニークな用語があるので、私はたくさんのセットを作らなければならないでしょう。何が問題なのですか?