list vs tuple
📌 list, tuple
: 여러 자료들을 담을 수 있는 자료형.
표기법 | 순서 | 자료변경 | |
list | [ ] | O | O |
tuple | ( ) | O | X |
💡 tuple 표시할 때 주의할 점
tu = (1)
print(type(tu)) # <class 'int'>
tu = ("abcd")
print(type(tu)) # <class 'str'>
tu = (1,)
print(type(tu)) # <class 'tuple'>
list indexing, index
📌 list는 인덱싱이 가능함.
li = [1, 2, 3, 4, 5]
for i in range(0, len(li)):
print(f"li[{i}] : {li[i]}")
print()
for i in range(-1, -(len(li)) - 1, -1):
print(f"li[{i}] : {li[i]}")
# li[0] : 1
# li[1] : 2
# li[2] : 3
# li[3] : 4
# li[4] : 5
# li[-1] : 5
# li[-2] : 4
# li[-3] : 3
# li[-4] : 2
# li[-5] : 1
💡 index와 indexing
https://codingrecord2209.tistory.com/77
[Python] index와 indexing
Indexing(인덱싱) : index(인덱스)를 활용해 자료에 접근하는 것을 말함. 예) list[index], tuple[index] Index(인덱스) : 자료의 순서를 나타내는 것. 0부터 시작. * index(인덱스)가 0부터 시작하는 이유 : 최..
codingrecord2209.tistory.com
list 슬라이싱
📌 list는 슬라이싱이 가능함.
📌 슬라이싱은 자료를 나누는 것을 말함.
📌 자료 [start : stop : step]
: start부터 step만큼 건너뛰며 (stop - 1)까지를 의미하며, start, stop, step 모두 생략이 가능함.
li = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(li[:3]) # [1, 2, 3]
print(li[5:]) # [6, 7, 8, 9]
print(li[::2]) # [1, 3, 5, 7, 9]
print(li[3:7]) # [4, 5, 6, 7]
💡 슬라이싱
https://codingrecord2209.tistory.com/78
[Python] 슬라이싱
슬라이싱 : 자료를 나눌 수 있는 것. 인덱스가 있는 자료형 모두 슬라이싱 가능. - 자료 [start : stop : step] : start 부터 (stop - 1)까지. - start, stop, step 모두 생략 가능. s = '19951004' s[:4] # start..
codingrecord2209.tistory.com
list 관련 메서드
📌 list 관련 메서드
list.append( ) | 자료 추가 |
list.insert(index, 자료) | 지정한 위치에 자료 추가(맨 뒤에 추가) |
del list[index] | 지정한 위치의 자료 삭제 |
list.pop( ) | 자료 삭제(default : 맨 뒤) |
list.pop(index) | 지정한 위치의 자료 삭제 |
list.count(자료) | list 안에 '자료'의 개수 반환 |
list.index(자료) | '자료'의 위치 반환 |
list.sort( ) | 자료 정렬(오름차순) |
list.reverse( ) | 리스트 뒤집기 |
list.copy( ) | 깊은 복사 |
list.clear( ) | 리스트 초기화 |
💡 sort( )는 list 안의 자료들이 모두 동일한 자료형일 때만 가능
💡 문자열도 sort( ) 가능
list 관련 메서드 - 예시
li = [1, False, "hello", 4.2, 45, "world"]
print(li)
li.append(5.2) # 자료 추가
print(li) # [1, False, "hello", 4.2, 45, "world", 5.2]
li.insert(2, "two") # 지정한 위치에 자료 추가
print(li) # [1, False, 'two', "hello", 4.2, 45, "world", 5.2]
del li[0] # 자료 삭제
print(li) # [False, 'two', "hello", 4.2, 45, "world", 5.2]
li.pop() # 맨 뒤에 위치한 자료 삭제
print(li) # [False, 'two', "hello", 4.2, 45, "world"]
li.pop(3) # 지정한 자료 제거 및 반환(default는 맨 뒤 자료)
print(li) # [False, 'two', "hello", 45, "world"]
print(li.count(False)) # 리스트 내 자료의 개수 반환 # 1
print(li.index("hello")) # 자료의 인덱스 반환 # 2
li = [45, 234, 12, 65 -23, -21, 8764, -12]
li.sort() # 자료 정렬(단, 리스트 내 자료형이 모두 동일한 경우)
print(li) # [-21, -12, 12, 42, 45, 234, 8764]
li.reverse() # 리스트 뒤집기
print(li) # [8764, 234, 45, 42, 12, -12, -21]
a = li.copy() # 깊은 복사
print(li) # [8764, 234, 45, 42, 12, -12, -21]
print(a) # [8764, 234, 45, 42, 12, -12, -21]
li.clear() # 리스트 초기화
print(li) # []
새로운 연산으로 새로운 리스트 생성
📌 새로운 연산으로 새로운 리스트 생성
li_a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
li_b = [-1, 0, 1]
li_double = [i * 2 for i in li_a]
print(li_double) # [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
li_odd = [i for i in li_a if i % 2 != 0]
print(li_odd) # [1, 3, 5, 7, 9]
li_ab = [i * j for i in li_a for j in li_b]
print(li_ab)
# [-1, 0, 1, -2, 0, 2, -3, 0, 3, -4, 0, 4, -5, 0, 5, -6, 0, 6, -7, 0, 7, -8, 0, 8, -9, 0, 9, -10, 0, 10]
'Python > Python' 카테고리의 다른 글
[Python] 복합 연산자 (0) | 2022.09.14 |
---|---|
[Python] 반복문(for문, 중첩) | range 함수 (0) | 2022.09.14 |
[Python] 조건문(if문) (0) | 2022.09.13 |
[Python] input 함수 | 형변환 (0) | 2022.09.07 |
[Python] 연산자 (0) | 2022.09.06 |
댓글