def troca_valor(lista, i1, i2):
a = lista[:]
tam = len(lista)
if i1 or i2 > tam:
return None
else:
a[i1] = lista[i2]
a[i2] = lista[i1]
return a
assert troca_valor([0,1,2,3],2,0) == [2,1,0,3]
assert troca_valor(["a", "e", "i", "o", "u"],1,3) == ["a", "o", "i","e", "u"]
assert troca_valor([0,1,2,3],7,3) == None
assert troca_valor([0,1,2,3],2,5) == None
アサートのように、リストの値を1つずつ変更する必要があります。このコードのようなことをしようとしていますが、アサートエラーが表示されます。これは私の最初の質問です。検索を使用しましたが、同様の質問はありませんでした。私の英語でごめんなさい。