파이썬에서 리스트 내부의 값을 변경하는 것은 어렵지 않다. 변경하고자 하는 인덱스를 지정하여 값을 설정하면 되거나 범이를 지정하여 갯수만큼 값을 변경해 줄 수 있다. 하지만 범위를 지정할 경우 마지막 값이 지정되지 않음을 명심하자. 파이썬의 범위가 조금 난해할 수 있다.
리스트 준비
리스트 조작하기 위한 데이터를 준비한다.
조작할 리스트를 설정하고 반복문으로 데이터를 하나씩 출력하였다.
앞에 나온 숫자는 값의 인덱스번호이다.
인덱스번호는 index() 함수를 이용한다.
vList = ["JYP", "트와이스", "정연", "모모", "지효", "채영", "쯔위", "다현", "나연", "미나", "사나"]
print("vListStr List :", type(vList), len(vList), vList)
print('----------------------------------------------------------------------------------------------------')
for lpVal in vList:
print("vList List :", type(lpVal), vList.index(lpVal), lpVal)
인덱스를 이용한 값 변경
인덱스를 이용하여 파이썬 리스트의 값을 변경하도록 한다.
변경하고자 하는 위치의 인덱스를 지정하고 값을 설정하면 그만이다.
특정 부분의 값을 변경하도록 하자.
첫번째 트와이스 란 한글 문자를 영문자 twice 로 변경해볼 것이다.
트와이스의 인덱스는 1이다.
vList[1] = "twice"
print("vListStr List :", type(vList), len(vList), vList)
결과화면을 보면 한글문자열 트와이스 란 단어가 영문자열 twice 로 변경된 것을 볼 수 있다.
범위를 지정하여 값 변경
파이썬에서 범위를 지정하는 방법은 엑셀의 그것과 같고, 대괄호를 이용한다.
범위지정 형식은 [ 시작위치 : 끝위치 ] 이며 위치에는 인덱스가 들어간다.
하지만, 파이썬의 특성상 끝위치 인덱스의 값은 포함하지 않는다.
인덱스가 2인 위치부터 4인 위치까지 값을 변경한다.
인덱스 위치가 2, 3, 4 로 3개의 값이 들어갈 것으로 보이지만, 위에 언급한 대로 파이썬의 리스트 범위의 마지막 값은 설정되지 않는다. 그렇기에 올바른 변경될 값은 2개이다.
vList[2:4] = ["JeongYeon", "Momo"]
print("vListStr List :", type(vList), len(vList), vList)
인덱스 위치 2, 3 위 위치는 각각 정연, 모모 이다.
영문자로 변경된 것을 확인할 수 있다.
범위보다 값이 많을 경우
보통의 리스트라면 지정한 범위보다 값이 많이 설정될 경우 에러가 날 수 있지만, 파이썬 무시하는 듯 하다.
코드를 보자.
인덱스 4, 5 위치의 범위를 지정했지만, 파이썬 리스트 특성상 인덱스 4번만 허용되지만, 이 경우 범위를 넘어선 경우이다.
이 경우 정상적으로 값은 추가되지만 범위를 벗어난 값은 변경된 값 다음에 추가되는 현상을 보여준다.
vList[4:5] = ["Jihyo", "ChaeYoung"]
print("vListStr List :", type(vList), len(vList), vList)
결과를 보면 정상적으로 변경된 인덱스 4 위치 다음에 지정한 범위를 넘어간 만큼의 값이 추가된 것을 알 수 있다.
범위보다 값이 부족할 경우
범위보다 값이 부족할 경우는 지정한 범위의 값을 수정하고 이후 값은 제거된다.
수정할 범위는 인덱스 4번부터 6번까지의 위치지만 설정된 값은 2개 밖에 없다.
이 경우 정상적으로 수정되는 인덱스 위치 값은 4번 5번 이며 부족한 부분만큼 값이 삭제된다.
vList[4:7] = ["Jihyo", "ChaeYoung"]
print("vListStr List :", type(vList), len(vList), vList)
'programming > Python' 카테고리의 다른 글
파이썬 리스트 값 삭제하기 remove pop clear del (0) | 2021.08.14 |
---|---|
파이썬 리스트 값 추가하기 append insert extend 사용하기 (0) | 2021.08.13 |
파이썬 리스트 음수 인덱스로 접근하여 출력하고 값 추출하는 방법 Python Access List Items Negative Indexing (0) | 2021.08.11 |
파이썬 리스트 출력하고 값 추출하는 방법 Python Access List Items (0) | 2021.08.11 |
파이썬 리스트 다양한 데이터타입의 반복된 배열 컬렉션 python list (0) | 2021.08.10 |
댓글