-
[코딩도장] day10. 리스트 요소값 조작하기 - index(), count(), reverse(), sort(), sorted, clear()IT/파이썬 2020. 8. 22. 22:17
■ 들어가기
- 파이썬 코딩 도장 (남재윤/길벗). 을 공부하며 정리하는 블로그
▶ Unit22. 리스트와 튜플 응용하기
- 22.1 리스트 조작하기
- 22.2 리스트의 할당과 복사 알아보기
- 22.3 반복문으로 리스트의 요소를 모두 출력하기
- 22.4 리스트의 가장 작은 수, 가장 큰 수, 합계 구하기
- 22.5 리스트 표현식 사용하기
- 22.6 리스트에 map 사용하기
- 22.7 튜플 응용하기
>> 22.1 리스트 조작하기 <<
1. 리스트에서 특정 값의 인덱스 구하기
- 사용법: index(값)
- 같은 값이 려거 개인 경우, 처음 찾은 인덱스를 return (가장 작은 인덱스)
- 존재하지 않는 값을 찾을 경우 Error 발생
>>> a = [10, 20, 30, 15, 20, 40]
>>> len(a)
6
>>> a[len(a)-1]
40
>>> a.index(20)
1
>>> a.index(100)
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
a.index(100)
ValueError: 100 is not in list2. 특정 값의 개수 구하기
- 리스트에서 특정 값의 개수를 구함
- 사용법: count(값)
- 존재하지 않는 값을 찾을 경우 0 return
>>> a = [10, 20, 30, 15, 20, 40]
>>> len(a)
6
>>> a.count(20)
2
>>> a.count(100)
03. 리스트의 순서 뒤집기
- 리스트의 요소의 순서를 반대로 뒤집기 위한 메서드
- 사용법: reverse()
>>> a = [10, 20, 30, 15, 20, 40]
>>> len(a)
6
>>> a.reverse()
>>> a
[40, 20, 15, 30, 20, 10]
>>> a.reverse()
>>> a
[10, 20, 30, 15, 20, 40]4. 리스트의 요소를 정렬하기
- 리스트의 요소를 작은 순서대로 정렬(오름차순)하기 위한 메서드
- 사용법:
- sort() 또는 sort(reverse=False) : 리스트의 값을 작은 순서대로 정렬 (오름차순)
- sort(reverse=True) : 리스트의 값을 큰 순서대로 정렬 (내림차순)
>>> a = [10, 20, 30, 15, 20, 40]
>>> a.sort()
>>> a
[10, 15, 20, 20, 30, 40]
>>> a.sort(reverse=True)
>>> a
[40, 30, 20, 20, 15, 10]- sort메서드와 sorted함수
- sort : 메서드를 사용한 리스트를 변경
- sorted : 정렬된 새 리스트를 생성
>>> a = [10, 20, 30, 15, 20, 40]
>>> a.sort() # a의 내용을 변경하여 정렬
>>> a
[10, 15, 20, 20, 30, 40]
>>> b = [10, 20, 30, 15, 20, 40]
>>> sorted(b) # 정렬된 새 리스트를 생성
[10, 15, 20, 20, 30, 40]
>>> c = sorted(b)
>>> c
[10, 15, 20, 20, 30, 40]5. 리스트의 모든 요소 삭제
- 사용법: clear(), del 리스트[:]
>>> a = [10, 20, 30]
>>> a.clear()
>>> a
[]>>> a = [10, 20, 30]
>>> del a[:]
>>> a
[]6. 리스트를 슬라이스로 조작
>>> a = [10, 20, 30]
>>> a[len(a):] = [500] # a.append(500)과 동일
>>> a
[10, 20, 30, 500]>>> a = [10, 20, 30]
>>> a[len(a):] = [500, 600] # a.extend([500, 600]) 동일
>>> a
[10, 20, 30, 500, 600]7. 리스트가 비어있는지 확인
1) len 함수로 길이 구하기
>>> a = [10, 20, 30]
>>> len(a)
3
>>> a.clear()
>>> len(a)
02) if 조건문으로 판별하기
>>> a = [10, 20, 30]
>>> if a : # 리스트에 내용이 있으면 True
print('not empty')
else : # 리스트에 내용이 없는 경우
print('empty')
not empty
>>> a.clear()
>>> if a:
print('not empty')
else :
print('empty')
empty- 리스트에 요소가 있을 때만 마지막 요소 확인하기
>>> a = [10, 20, 30]
>>> a[-1] # 리스트 마지막 요소 접근 시 인덱스 -1 지정
30
>>> a.clear()
>>> a[-1]
Traceback (most recent call last):
File "<pyshell#148>", line 1, in <module>
a[-1]
IndexError: list index out of range
>>> if a :
print(a[-1])
else :
print('list is empty')
list is empty'IT > 파이썬' 카테고리의 다른 글
[코딩도장] day10. 리스트 map, 튜플 (0) 2020.08.23 [코딩도장] day10. 리스트 할당/복사, 리스트 표현식 (0) 2020.08.22 [코딩도장] day10. 리스트 추가/삭제 - append,extend,insert / pop,remove (0) 2020.08.22 [코딩도장] day9. 반복문 제어 - break, continue (0) 2020.08.17 [코딩도장] day9. while 반복문 (0) 2020.08.17