Python - list ()

728x90

List

하나의 변수에 여러가지 변수들을 저장하고 싶을 때 쓰임

 

특징:

  • 리스트안에서 리스트 할당 가능
  • 리스트는 수정이 자유로워서 수정을 하면 안되는 경우에는 tuple이나 string을 대신하여 사용
#list 선언할때 []를 사용하여 선언
L=['a','b','c']
print(L)
print(type(L))

['a','b','c']
<class 'list'>

#빈 리스트를 만들어서 .append 함수로 리스트에 추가할 수 있음
v=a
L=list()
L.append(v)
print(L)

['a']

#리스트 안의 리스트 할당 가능

L2=[1,2,L]
print(L2)

[1,2,['a','b','c']]

#두개의 리스트를 포함 가능
L3=[[1,2],[3,4]]
print(L3)

[[1,2],[3,4]]

 

Indexing

할당한 리스트를 indexing, 분류하고 싶을때 아래와 같이 사용.

여러가지 데이터가 묶여있기 때문에 데이터를 전처리 한다는 느낌

 

L=[1,2,3,4,5]
print(L[1])
print(L[:3])
print(L[-1])
print(L[:-1]) # 음수 정수는 뒤에서 부터 시작한다는 개념으로 접근 

2
[1,2,3]
5
[1,2,3,4]

#리스트 안의 리스트 변수 접근 방법
L2=[[1,2],[3,4]]
print(L2[1][0]) #왼쪽부터 오른쪽으로 1번의 리스트 변수에서 0번의 변수를 추출한다는 명령어

3

 

Slicing

리스트의 일부를 자르는 함수. numpy, pandas, DataFrame에서도 많이 사용됨

 

L=[1,2,3,4,5]
print(L[1:3]) # 뒷 숫자는 포함하고 앞의 숫자는 포함하지 않음
print(L[:1]) # 앞의 숫자가 없으면 0으로 인식
print(L[-2:]) # 음수 사용도 가능

[2,3]
[1]
[4,5]

 

리스트 연산

 

계산을 하는 것이 아니라 리스트끼리 합치는 개념

 

L=[1,2,3,4,5]
L2=[6,7,8]
print(L+L2)
print(L*2)

[1,2,3,4,5,6,7,8]
[1,2,3,4,5,1,2,3,4,5]

 

리스트 수정

한번바뀐 리스트는 원상복구 불가

리스트에 추가하는 함수는 .append()

L2=[1,7,8]
L2[0]=10 # 리스트 안의 0번 자리의 숫자인 1을 10으로 바꿀 수 있음
L3=[] # 빈 리스트에 .append() 함수를 써서 새로운 변수 할당 가능
L2.append(54)
L3.append(10) # 하나씩만 추가 가능
L3.append(11)
print(L3)
print(L2)

[10,11]
[10,7,8,54]

 

리스트 정렬

숫자를 오름차순으로 자동 정렬

  • 순서를 반대로 바꾸고 싶을때는 sort대신 reverse 함수를 사용
  • 다만 순서를 내림차순으로 바꾸고 싶을때는 sort(reserse=True) 함수 사용
#오름차순 정렬
print(L2.sort())

[7,8,10,54]


#내림차순 정렬
print(L2.sort(reverse=True))

[54,10,8,7]


#순서를 반대로만 정렬
print(L2.reverse())

[54,8,7,10]


#내림차순을 아래와 같이 지정할 수도 있음
print(L2[::-1]) # 처음부터 끝까지 기준으로 -1이 말이 안되지만 파이썬은 자동으로 끝부터 처음까지 정렬로 인식

[54,10,8,7]

 

리스트 제거

pop 함수를 사용해서 제거

한번 실행할때마다 -1 원소 1개씩 순차적으로 제거됨

L4=[1,2,3,4,5]
L4.pop()
L4

[1,2,3,4]


L4.pop()
L4

[1,2,3]
728x90

'Python > Python 기초' 카테고리의 다른 글

파이썬의 수 자료형의 연산  (0) 2022.04.27
Python - dictionary  (0) 2021.12.11
Python - tuple & set  (0) 2021.12.11
Python - String Formatting  (0) 2021.12.07
Python - Integer & String  (0) 2021.12.07