리스트( list )
드디어 파이썬의 리스트입니다.
제 주관적인 생각이지만, 실제로 파이썬에서 리스트는 정말 많이 사용되고 있습니다.
리스트는 단독으로 쓰이기도 하고, 반복문 하고도 상당히 많이 쓰고, 함수들도 눈여겨보아야 합니다.
[ 리스트 ] 안의 내용물들 (아이템들)
# empty list
ex_list = []
print(type(ex_list)) # <class 'list'>
print(ex_list) #[]
# list of numbers
num_list = [1, 2, 3, 4, 5]
print(num_list) # [1, 2, 3, 4, 5]
# list of str
str_list = ['a', 'b', 'c', 'd']
print(str_list) # ['a', 'b', 'c', 'd']
print(type(str_list[0])) # <class 'str'>
# list of string
string_list = ['python', 'is', 'Fun']
print(string_list) # ['python', 'is', 'Fun']
print(type(string_list[0])) # <class 'str'>
# list of mixed
mixed_list = [1, 10.1, 'a', 'python']
print(mixed_list) [1, 10.1, 'a', 'python']
for element in mixed_list:
print('element :',element,' type :',type(element))
# element : 1 type : <class 'int'>
# element : 10.1 type : <class 'float'>
# element : a type : <class 'str'>
# element : python type : <class 'str'>
리스트 안의 데이터를 [ 아이템 ] 이라고도 부르고 있습니다.
위의 코드를 보면은 [ 빈 리스트 ], [ 숫자 데이터 리스트 ],
[ 문자 데이터 리스트 ], [문자열 데이터 리스트 ],
[ 혼합형 데이터 리스트 ] 들을 볼 수가있습니다.
리스트는 참고로 정말 많이 쓰이고 있습니다.
하나하나 살펴보도록 하겠습니다.
첫 번째 빨간 네모 :
[ 빈 리스트 ]를 선언한 부분입니다.
그 밑으로는 type() 함수를 이용하여, '리스트 형'이라는 것을 확인했습니다.
출력은 print() 함수를 이용합니다.
두 번째 빨간 네모 :
[ 숫자 데이터 리스트 ]를 선언한 부분입니다.
그 밑으로는 print() 함수를 사용하여, 출력을 하였습니다.
세 번째 빨간 네모 :
[ 문자 데이터 리스트 ]를 선언한 부분입니다.
그 밑으로 type(str_list [0])) 을 보면은 리스트 안의 데이터의 타입을 확인한 것입니다.
즉 'a'라는 데이터는 str 형이라는 의미입니다.
네 번째 빨간 네모 :
[ 문자열 데이터 리스트 ]를 선언한 부분입니다.
그 밑으로는 type(string_list[0]) str 형이라는 의미입니다.
다섯 번째 빨간 네모 :
[ 혼합형 데이터 리스트 ]를 선언한 부분입니다.
그 밑으로 보시면은 [ for문 ]이라는 문법적인 요소와 함께 쓰이고 있습니다.
이런 식으로 정말 많이 쓰이고 있습니다.
정말 중요합니다. 이것을 여러 번 연습하셔야 편리하게 사용할 수 있습니다.
for element ( 변수 A ) in mixed_list ( 리스트 변수) :
print('element :', element ( 변수A ), ' type :', type(element))
(변수 A)는 바로 정하는 변수입니다. ( 리스트 변수 )는 자신이 만들었던 리스트 변수입니다.
mixed_list 의 데이터는 1, 10.1, 'a', 'python' 입니다.
for element in mixed_list :
해석 : 혼합형 리스트 안에 있는 요소를 건드릴 것입니다.
print('element :', element, ' type :', type(element))
해석 : 요소 출력 요소 타입 출력입니다.
여러 가지 예시입니다.
예시 1>
숫자들 리스트의 for문을 이용한 출력
print() 함수를 이용하여, num_list 안의 데이터를 한 번씩 출력하면서, Enter를 입력한 것과 같이 됩니다.
예시 2>
문자 리스트의 for문을 이용한 출력
이 정도면 충분한 예시인 듯합니다.
결론 :
리스트 안의 데이터로는 '어떠한 타입' 이든 데이터로 들어갈 수 있다.
aw = ['Aligned', 'with', ',opening', 'delimiter']
print(aw[0]) # Aligned
print(aw[3]) # delimiter
print(aw[1:3]) # ['with', ',opening']
print(type(aw)) # list
print(type(aw[0])) # str
print(type(aw[1:3])) # list
aw라는 변수에 리스트입니다.
오프셋으로 하나씩 결과를 얻기도 합니다.
ex> aw[0] # type str
만약에 값이 정수였으면, int라고 되어있었을 겁니다.
슬라이스로 추출도 가능합니다
ex> aw[1:3] # type list
# create
aw = ['Aligned', 'with', ',opening', 'delimiter']
# read
print(aw) # ['Aligned', 'with', ',opening', 'delimiter']
# append , similar push
aw.append('.')
print(aw) # ['Aligned', 'with', ',opening', 'delimiter', '.']
# insert
aw.insert(1,'Umm')
print(aw) # ['Aligned', 'Umm', 'with', ',opening', 'delimiter', '.']
# delete
aw.remove('Umm')
# del aw[1]
print(aw) # ['Aligned', 'with', ',opening', 'delimiter', '.']
# update
aw[4] = 'Wow'
print(aw) # ['Aligned', 'with', ',opening', 'delimiter', 'Wow']
리스트는
생성, 읽기, 추가, 삽입, 삭제, 변경이 가능합니다.
리스트 생성은 계속 봤고요.
ex > aw = ['Aligned', 'with', ',opening', 'delimiter']
리스트 읽기
ex. > print(aw)
리스트 추가하기
ex > aw.append('.')
리스트 삽입하기
ex > aw.insert(1,'Umm')
aw[1] 자리에 'Umm'을 집어넣는 것입니다.
리스트 삭제하기
ex > aw.remove('Umm') 또는 del aw[1]
둘 중 하나를 이용하시면 삭제가 가능합니다.
리스트 변경하기
ex > aw[4] = 'Wow'
list_ex = list('computer')
print(list_ex) # ['c', 'o', 'm', 'p', 'u', 't', 'e', 'r']
now_time = '2020/08/20/10/30/10'
print(type(now_time)) # <class 'str'>
print(now_time) # 2020/08/20/10/30/10
no_time = now_time.split('/')
print(type(no_time)) <class 'list'>
print(no_time) # ['2020', '08', '20', '10', '30', '10']
str (문자열) 일 경우에 바로 list 형으로 바꿀 수 있습니다.
[중요]
split('/')이라는 함수를 통해서 '/'를 기점으로 문자들을 리스트화 할 수 있습니다.
ex_string = 'Aligned with opening delimiter'
print(type(ex_string)) # <class 'str'>
print(ex_string) # Aligned with opening delimiter
aw = ex_string.split(' ')
print(type(aw)) # <class 'list'>
print(aw) # ['Aligned', 'with', 'opening', 'delimiter']
print('with' in aw ) # True
print('in' in aw) # False
print(aw.count('with')) # 1
이제 문자열로 이루어진 ex_string 을 split(' ')이라는 함수를 통해서
리스트로 변경되는 과정입니다.
밑에 in이라는 예약어를 통해서 boolean 값인 True와 False 값을 출력해 줄 수 있습니다.
count는 안에 어떠한 리스트 값들이 있는지를 세어 줍니다.
요약
리스트 안의 내용물은 어떠한 값이라도 들어갈 수 있습니다.
리스트는 생성, 삽입, 추가, 변경, 삭제 가 가능합니다.
문자열에서 리스트로 함수를 통해서 가능합니다. ex> list, split
'python' 카테고리의 다른 글
[Python] 파이썬 딕셔너리 (0) | 2020.09.13 |
---|---|
[Python] 파이썬 튜플(리스트) (0) | 2020.08.21 |
[파이썬 자료형] 문자열 다루기 강좌 (0) | 2020.08.12 |
[파이썬] VSCODE로 파이썬 코딩하는 방법 (0) | 2020.08.06 |
[파이썬] py(스크립트) 파일을 exe(실행파일) 만들기 (0) | 2020.07.25 |