오늘은 반복 자료형 (list, split, join, sort, sorted)에 대해 알아보겠습니다.
* 리스트
: 파이썬 반복 자료형 중 가장 많이 사용되는 것입니다. 파이썬의 리스트에 포함되는 원소들은 반드시 동일한 자료형이 아니어도 되고, 보통 대괄호 사이에 각 원소들을 쉼표로 구분하여 생성합니다.
test = ['one', 'two', 'three', 4, 5, 6]
print(test[0])
print(test[-1])
문자열에서 문자 위치를 인덱스라고 하듯이 리스트에서도 원소 위치를 인덱스라고 합니다.
[]사이에 인덱스 번호를 사용해서 몇번째원소인지를 지정합니다.
현재 첫번쨰 원소는 test[0]은 one이라는 문자열이고, 마지막 원소는 test[-1]로 표시하여 6입니다.
인덱스에 대한 개념이 어려우시면 아래 링크를 통해 먼저 확인해주세요.
(choseongho93.tistory.com/255)
test2 = [[1,2],[3,4]]
print(test2[0][1])
print(test2[1])
리스트의 원소로 다른 리스트를 포할할 수 있습니다. 심지어 다른 반복 자료형도 원소로 포함할 수 있습니다.
test2변수에 리스트의 원소로 리스트를 담아줍니다.
test2변수의 첫번째 원소 0은 [1,2]리스트이고 그안에 또 두번쨰원소1은 숫자 2이므로 2가 출력됩니다.
test2변수의 두번쨰 원소 1은 [3,4]리스트이므로 [3,4]가 출력됩니다.
test3 = test2 + test2
print(test3)
위 test2변수에 리스트로 저장한 값을 +(덧셈연산자)를 통해 리스트 뒤에 리스트를 추가할 수 있습니다.
test4 = test2 * 3
print(test4)
곱셈 연사자 *를 통해 곱한 숫자만큼 리스트를 반복하여 추가할 수 있습니다.
* split() 함수
: 문자열을 분리할 때 사용합니다. 인수로 주어진 문자열을 구별자로 사용하는데, 구별자가 존재하지 않을경우에는
공백 문자를 기준으로 문자열을 분리합니다.
분리된 문자열은 리스트로 반환됩니다.
* join() 함수
: 문자열을 split() 함수를 사용해서 리스트로 반환했듯이 역으로 join()함수를 사용하면 리스트를 인수로 받아서 문자열 하나로 만들 수 있습니다.
# split
myList = 'my name is troll'.split()
print(type(myList))
print(myList)
# join
print(' '.join(myList))
split()함수에 인수로 구별자를 지정하지 않았기에 공백문자를 기준으로 분리해줍니다.
타입은 list타입이고 문자를 분리하여 리스트가 출력됩니다.
joint()함수를 통해 리스트를 공백으로 다시 문자열로 역으로 반환하여 출력해줍니다.
* sort()
: 리스트를 직접 정렬하고 None을 반환합니다.
리스트에서만 사용가능합니다.
* sorted()
리스트뿐 아니라 문자열, 튜플, 딕셔너리 등 반복 가능한 자료형에 모두 사용할 수 있습니다.
sorted()함수는 기존 리스트를 복사해서 새로 만들어 반환하기 때문에 sort()함수보다는 다소 느립니다.
그리고 중요한것은 기존 리스트에는 영향을 주지 않습니다.
# sort
li = [4,3,6,8,1]
li.sort()
print(li)
# sorted
li2 = [4,3,6,8,1]
print(sorted(li2))
print(li2)
li 변수를 sort함수를 통해 정렬해줍니다.
li2 변수를 sorted함수를 통해 기존 리스트를 복하해서 새로 만들어 반환해줍니다.
그리고 다시 li2를 출력하면 기존 리스트 값이 출력됩니다.
'Programming Language > Python' 카테고리의 다른 글
[Python] Mac에서 python 기본 버전 변경하는 방법 (0) | 2021.01.20 |
---|---|
[Python] 'module' object is not callable - timeit 에러 해결 (0) | 2021.01.12 |
[Python] 천 단위 숫자를 쉼표로 구분하기 (format) (0) | 2021.01.12 |
[Python] 반복 자료형 (append, extend, 구분자 변경하기) (0) | 2021.01.11 |
[Python] if, for, while, try except 문 설명 및 간단한 예제 (0) | 2021.01.09 |
[Python] 인덱싱, 슬라이싱, 산술연산, 연산자 우선순위 (0) | 2021.01.08 |
[Python] str 문자열 클래스 & 이스케이프 문자 (print, type) (0) | 2021.01.07 |
[Python] 파이썬 간단하게 설치하는 방법 - Window (0) | 2021.01.06 |