본문 바로가기
파이썬(Python)

[파이썬] 함수와 리스트 (List comprehension 사용방법)

by 안한량 2022. 10. 25.
728x90

함수에 대해 이해하기

함수의 모양과 활용

함수는 매개변수(Parameter)를 입력받은 후 그 매개변수를 가공 및 처리한 후에 반환 값을 돌려준다.

 

두 정수를 입력 받아 두 정수의 합계를 반환하는 plus() 함수 만들기

2~5행에 plus() 함수를 정의하였으나 먼저 실행되지 않는다.
11
행에서 함수를 호출하면 그때 실행된다.

리스트에 대해 이해하기

리스트의 이해

리스트는 박스(변수)를 한 줄로 붙인 뒤에 박스 전체의 이름(aa)을 지정한다.

각각은 aa[0], aa[1], aa[2], aa[3]과 같이 번호(첨자)를 붙여서 사용한다.

 

리스트를 사용하는 이유

4개의 정수형 변수를 선언한 다음 변수에 값을 입력받고 합계를 출력하는 프로그램

 

리스트 생성 방법

리스트를 사용하지 않는다면 각각의 변수를 a, b, c, d와 같이 선언(아래 ①)

하지만 리스트를 사용하면 첨자를 넣어 aa[0], aa[1], aa[2], aa[3]과 같이 선언(아래 ②)

이때 항목이 4개인 리스트를 생성한다면 첨자는 1~4가 아닌 0~3을 사용한다.

리스트를 사용해서 수정

리스트의 일반적인 사용법

빈 리스트와 리스트의 추가

비어있는 리스트를 만들고 ‘리스트 이름. append(값)’함수로 리스트에 하나씩 추가할 수 있다.

 

100개의 리스트를 만들 경우 append()와 함께 for문을 활용

for문으로 100(0부터 99까지)을 반복해서 리스트 이름. append(0)로100개 크기의 리스트를 만듦

len 함수로 리스트의 개수를 확인

 

For문 활용

만약 리스트가 100개라면 hap =aa[0] +aa[1] +…aa[99]로 일일이 코딩하지 않고9행을 for문으로 변경한다.

리스트의 생성과 초기화

여러 개의 리스트 값을 사용하기

리스트 이름[시작:끝+1]’로 지정하면 리스트의 모든 값이 나옴

 

콜론의 앞이나 뒤 숫자의 생략도 가능하다.

리스트끼리 더하기, 곱하기 연산도 가능하다.

리스트 값을 변경하기

두 번째 위치한 한 개의 값을 변경하는 방법

두 번째 값인 20200201 두 개의 값으로 변경

aa[1:2] 대신 aa[1]을 사용 리스트 안에 또 리스트로 추가됨. 결과가 틀리지는 않지만 이렇게는 많이 사용하지 않음

del() 함수를 사용하여 aa[1] 항목을 삭제하는 방법

여러 개의 항목을 삭제하려면 ‘aa[시작:+1]=[ ]’ 문장으로 설정

 

리스트 조작 함수


List comprehension

리스트 안에 반복문을 포함하여 리스트 데이터를 표현하는 방법이다.

리스트를 초기화할 때 매우 효과적(and 속도 향상)

 

사용 예)

num_list=[]

for i in range(1, 11):

num_list.append(i**2)

print(num_list)

결과) num_list=[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

num_list=[i**2 for i in range(1,11)]

print(num_list)

결과) num_list=[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

num_list=[i**2 for i in range(10) if i%2==0]

print(num_list)

결과) num_list=[0, 4, 16, 36, 64]

 

리스트 컴프레션은 계속 사용해봐야 머리에 익힐 수 있을 것이다.

 

728x90