파이썬 리스트 탐색 질문있습니다!

gohy의 이미지

a=[1,2,3,4,5,6,8,8,20,-2,4]
for x in a:
if x%2==0:
x='a'
print a

x를 통해서 a의 값을 변경하려고 합니다ㅜ
a의 값을 특정 조건에서 변경하려고 하는데 어떻게하는게 좋을까요ㅠㅠㅠ

twinwings의 이미지

http://stackoverflow.com/questions/522563/accessing-the-index-in-python-for-loops

a=[1,2,3,4,5,6,8,8,20,-2,4]
 
for idx, val in enumerate(a):
    if a[idx]%2==0:
        a[idx]='a'
print a
neocoin의 이미지

이렇게 그냥 새로 할당하기도 합니다.

a = [1,2,3,4,5,6,8,8,20,-2,4]
a = ['a' if i % 2 == 0 else i for i in a]
익명 사용자의 이미지

감사합니다!!