본문 바로가기

사전학습 Python

8.List 리스트

List 리스트

[] 안에 ,로 요소(엘리멘터)를 나열한다.

숫자형, 문자형, 논리형을 사용할 수 있다. 


list_a = [1, 2, 3, 4] 
list_b = ["a", "b", "c"]
list_c = [True, False]
list_d = [1, "a", True]

print(list_a) #[1, 2, 3, 4]
print(list_b) #['a', 'b', 'c']
print(list_c) #[True, False] 
print(list_d) #[1, 'a', True]


 

 

리스트의 인덱싱과 슬라이싱

인덱스는 숫자로, 슬라이싱은 리스트로 반환된다.


numbers = [0, 1, 2, 3, 4, 5, 6, 7]
print(numbers[0]) #0
print(numbers[3:5]) #[3, 4]

print(numbers[1:]) #[1, 2, 3, 4, 5, 6, 7]
print(numbers[-3:-1]) #[5, 6]


 

 

리스트 인덱스 슬라이싱  - 문자열


list_lang = ["JAVA", "C", "Python", "Go"]


print(list_lang[0]) #JAVA

print(list_lang[0][0]) #J
print(list_lang[2][:3]) #Pyt

 

list_lang[1] = "C++"
print(list_lang) #['JAVA', 'C++', 'Python', 'Go']

 

list_lang[1:3] = ["C#","Python3"] 
print(list_lang) #['JAVA', 'C#', 'Python3', 'Go']


 

 

리스트와 len() 

요소의 갯수를 숫자로 반환


list_lang = ["JAVA", "C", "Python", "Go"]
print(len(list_lang)) #4


 

 

 

리스트 요소 추가

append() 함수

리스트 맨 뒤에 인덱스를 추가한다.

요소 자리에 리스트를 넣으면 리스트가 [] 통채로 들어간다.


list_lang = ["JAVA", "C", "Python", "Go"]
list_lang.append("Ruby")
print(list_lang) #['JAVA', 'C', 'Python', 'Go', 'Ruby']

 

list_a = [1, 2, 3]
list_lang.append(list_a)
print(list_lang) #['JAVA', 'C', 'Python', 'Go', 'Ruby', [1, 2, 3]]


 

 

extend()

리스트 맨 뒤에 요소를 추가한다.


list_lang = ["JAVA", "C", "Python", "Go"]
list_lang.extend("Ruby")
print(list_lang) #['JAVA', 'C', 'Python', 'Go', 'R', 'u', 'b', 'y'


 

 

insert(index, data)

원하는 위치에 데이터 요소를 삽입


list_lang = ["JAVA", "C", "Python", "Go"]
list_lang.insert(0,"R")
print(list_lang) #['R', 'JAVA', 'C', 'Python', 'Go']


 

 

 

리스트 요소 삭제

pop()

제일 뒤에 있는 요소를 반환 후 삭제


list_lang = ["JAVA", "C", "Python", "Go"]
print(list_lang.pop(0)) #JAVA
print(list_lang) #['C', 'Python', 'Go']


 

 

remove()

요소를 직접 지정하여 삭제


list_lang = ["JAVA", "C", "Python", "Go"]
list_lang.remove("C")
print(list_lang) #['JAVA', 'Python', 'Go']


 

 

del

인덱스를 지정하여 삭제


list_lang = ["JAVA", "C", "Python", "Go"]
del list_lang[2]
print(list_lang) #['JAVA', 'C', 'Go']


 

 

 

리스트 요소 정렬 (숫자, 알파벳, 한글)

sort()

리스트 안의 요소를 오름차순으로 정렬한다.


numbers = [10, 1000, 200, 300, 40, 1]
numbers.sort()
print(numbers) #[1, 10, 40, 200, 300, 1000]

 

names = ["아온김", "경연김", "영소이"]
names.sort()
print(names) #['경연김', '아온김', '영소이']


 

 

reverse()

리스트 안의 요소를 원래 순서와 역순으로 정렬한다.


numbers = [10, 1000, 200, 300, 40, 1]
numbers.reverse()
print(numbers) #[1, 40, 300, 200, 1000, 10]

 

names = ["아온김", "경연김", "영소이"]
names.reverse()
print(names) #['영소이', '경연김', '아온김']


+

sort()와 reverse()를 이용하여

리스트 안의 요소를 내림차순으로 정렬


numbers = [10, 1000, 200, 300, 40, 1]
numbers.sort(reverse = True)
print(numbers) #[1000, 300, 200, 40, 10, 1]

 

names = ["아온김", "경연김", "영소이"]
names.sort(reverse = True)
print(names) #['영소이', '아온김', '경연김']


 

이러한 정렬 방법은 문자에 매칭되는 숫자를 비교하는 것이다.

 

ord()

문자에 해당하는 10진수 반환

chr()

10진수에 해당하는 문자를 반환


print(ord("A")) #65
print(ord("a")) #97
print(ord("ㄱ")) #12593
print(ord("ㄴ")) #12596

print(chr(65)) #A
print(chr(97)) #a
print(chr(12593)) #ㄱ
print(chr(12596)) #ㄴ

 


리스트 요소 확인

in 

리스트에 있으면 True, 없으면 False 반환

not in

리스트에 없으면 True, 있으면 False반환

 


list_lang = ["a", "b", "c", "d"]
print("a" in list_lang) #True
print("a" not in list_lang) #False


 

'사전학습 Python' 카테고리의 다른 글

10.Tuple 튜플, Dictionary 딕셔너리  (1) 2023.03.15
9. 2차원 리스트  (0) 2023.03.14
7.문자열 메서드  (0) 2023.03.14
6. 포메팅  (0) 2023.03.12
5. 문자열 인덱싱, 슬라이싱  (0) 2023.03.12