リストアイテムを実際の値に変更しようとしています。たとえば、これは私のデータが今どのように見えるかです:リスト内のアイテムを1つのインデックス内の複数の「キー」に置き換える
data = [
['student1', '"answer 1"', '"answer 2"', '"answer 3"'],
['student2', '"answer 10"', '"answer 2"', '"answer 3", "answer 4"']
データの最後の項目で見られるように、[1]、単数質問に対する複数の応答が存在することができます。今すぐ私のコードはこれです:
def answer_replace(data):
replaced_data = []
for element in data:
replaced_element = []
for index, item in enumerate(element):
print (index)
print (item)
if index in answer_replacement:
replaced_element.append(answer_replacement[index].get(item, item))
else: # no replacement available for this index
replaced_element.append(item)
print (replaced_element)
replaced_data.append(replaced_element)
return replaced_data
複数の回答がある場合を除いては問題ありません。私はre.subを使用しようとしていましたが、動作させることができませんでした。 (値を変更したい回答は辞書answer_replacementに保存されています)
「答え」3、「答え4」はどういうことでしょうか?それは "1"、 "replacement 2" ''に置き換えられますか?そして、どのインデックスが彼らの置換えを調べるために使われるだろうか?彼らは両方ともインデックス3を共有するだろうか? –
@Rawingはい、それは置換 "1"、置換2 "'でなければなりませんが、2番目の質問はこの問題の混乱の一部です。 – fcb434