본문 바로가기

PYTHON

[python] 기초문법 - 리스트와 내장함수(1)

파이썬 기초문법 for 코딩테스트

 

리스트와 내장함수1

import random as r #random모듈에 있는 내장함수 사용을 위한 import

지금까지 배운 방법으로 2000명의 수학점수를 저장하기 위해서는 변수 2000개가 필요하다.

하지만, 이런 방법은 매우 비효율적이다.

파이썬에서 제공하는 자료구조인 리스트를 활용해서 효율적으로 코딩할 수 있다.

 

리스트란?

a=[1,2,3,4,5,6] #리스트 선언

print(a[0])# 1출력

print(a[2])# 3출력

#a란 리스트 변수 하나를 선언해서 인덱스로 접근하여, 여러개의 데이터를 관리할 수 있다. 

 

빈리스트를 만든는 2가지 방법

a=[]

b=list()

 

list 초기화

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

print(a) # [1, 2, 3, 4, 5] 출력

b=list(range(1,11)) # b에 1~10까지 를 리스트화해서 저장

print(b)#[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 출력

 

list 더하기

c=a+b

print(c)# [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 출력

 

list 내장함수

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

a.append(6)#a 마지막 요소에 6 추가

print(a) #[1, 2, 3, 4, 5, 6] 출력

a.insert(3,7)#3번 인덱스에 7추가 기존에 있던 데이터들은 뒤로 밀림.

print(a)#[1, 2, 3, 7, 4, 5, 6] 출력

a.pop()#리스트 마지막요소 반환후 제거

print(a)#[1, 2, 3, 7, 4, 5] 출력 = 6제거

a.pop(3)#3번 인덱스 반환 후 제거

print(a)#[1, 2, 3, 4, 5] 출력 3번인덱스인 7 제거

 

a.remove(4)#리스트에서 4라는 데이터를 찾아서 제거 인덱스로 제거하는 것이 아님. 뒤 데이터들은 앞으로 당겨짐.

print(a)#[1, 2, 3, 5] 출력

print(a.index(5))#5라는 데이터를 가지고 있는 인덱스 값을 찾아서 반환. 3출력

 

a=list(range(1,11))

print(sum(a))#a에 들어있는 데이터들의 합인  55 출력

print(max(a))#a리스트중에 최대값인 10 출력

print(min(a))#a리스트중에 최소값인 1 출력

#max min 함수는 인자 값들중에서 최소 최대값을 찾는 함수.

print(max(10,2,3,4,6))# 인자중 최대값인 10 출력

 

list 데이터 값을 랜덤으로 섞기

r.shuffle(a)

print(a)#[3, 4, 5, 1, 2, 6, 7, 10 ,9 ,8] 출력 (랜덤으로)

 

정렬

a.sort()#오름차순으로 정렬

print(a)#[1, 2, 3, 4, 5, 6, 7 ,8, 9, 10] 출력

a.sort(reverse=True)#내림차순으로 정렬

print(a)#[10, 9, 8, 7, 6, 5, 4, 3, 2, 1] 출력

a.clear()# 빈 리스트로 만들기

print(a)#[]출력