리스트
파이썬만의 고유한 기능들
- min(), max(), sum() : (리스트 내에서) 최소값, 최대값, 값을 모두 더함
- reversed() : 리스트 뒤집기
- enumerate() : 현재 인덱스가 몇 번째인지 확인하기
- items() : 딕셔너리로 쉽게 반복문 작성하기
리스트라는 개념은 C에는 없다. Python은 C를 통해 만들었는데 C에 있는 배열 개념을 가져와서 간략화한 게 리스트다.
차이점이 있다면 C에서는 배열 사용법이 문자열에 가깝고 선언할 때 하나의 타입만 선언 가능하다는 점이 있다.
딕셔너리는 보통 young하고 hip한 언어에 있는 함수라고 한다..(듣기론 그럼)
reversed()
temp = reversed([1, 2, 3, 4, 5, 6])
for i in temp:
print("첫 번째 반복문: {}".format(i))
for i in temp:
print("두 번째 반복문: {}".format(i))
이 코드를 살펴보자.
실제로 실행해보면 첫 번째 반복문만 실행된다.
그 이유는 reversed 함수가 제너레이터이기 때문이다.
제너레이터란 객체 지향 언어에 있는 개념으로, 일회용 함수란 뜻이다.
enumerated()
example_list = ["요소A", "요소B", "요소C"]
for i in range(len(example_list)):
print("{}번째 요소는 {}입니다.".format(i, example_list[i]))
이런식으로 작성하면 리스트의 요소를 반복할 때 현재 인덱스가 몇 번째인지 확인할 수 있다.
print("# List() 함수로 강제 변환 출력")
print(list(enumerate(example_list))
print()
실행 결과
# List() 함수로 강제 변환 출력
[(0, '요소A'), (1, '요소B'), (2, '요소C')]
딕셔너리의 items() 함수와 반복문 조합하기
딕셔너리는 items() 함수와 같이 사용하면 키와 값을 조합해서 쉽게 반복문을 작성할 수 있다.
딕셔너리는 주소값이 없다. 일명 노숙자.(집이 없어서...)

딕셔너리는 보통 보안때문에 사용한다. 키 값을 입력하지 않으면 값이 안나오기 때문이다.
예를 들어
a = { 1:2, 3:4, 5:6 }
for i in a :
print(a)
1
3
5
키값을 입력하지 않았으므로 값이 나오지 않았음
List/Dictionary | 문자열 | 튜플 |
수정, 추가, 삭제O | 추가만 가능 | 다 불가능 |
리스트 내포
range(0, 20, 2)의 요소를 i라고 할 때 i * i로 리스트를 재조합해주세요. 라는 의미를 담은 구문을 리스트 내포(List comprehensions)라고 부른다.
# 리스트를 선언함
array = [i * i for i in range(0, 20, 2)]
# 출력
print(array)
1줄로 줄일 수 있음
상황에 따라서는 뒤에 if문을 붙일 수도 있다.
문자열 연결하기
1. 괄호로 연결 => 문자열로 출력됨
2. join() 함수
< 문자열.join(문자열로 구성된 리스트) >
: 요소의 사이마다 글자를 추가하는 함수
ex. print("::".join(["1","2","3","4","5"])
=> 1::2::3::4::5
cf) split 함수 => 중간의 요소를 지우고 나눔(괄호 안에 있는 것 기준)
함수
함수의 기본
def 함수이름():
문장
매개변수
def 함수이름(매개변수, 매개변수, ...):
문장
기본적으로 매개변수를 n개 입력하고 싶으면 n개를 먼저 정의해야 한다. 하지만 항상 예외는 존재하는데
1) 가변 매개변수 2) 기본 매개변수(예를 들면 range())
가변 매개변수
함수는 함수를 선언할 때의 매개변수와 함수를 호출할 때의 매개변수가 같아야 했지만 가변 매개변수는 매개변수를 원하는 만큼 받아올 수 있다. 무한대로 가능.
사용 방법은 포인터랑 똑같이 생김.
def 함수 이름(매개변수, 매개변수, ..., *가변 매개변수):
문장
단 조건이 있음
- 가변 매개변수 뒤에는 일반 매개변수는 올 수 없음
=> 가변 매개변수가 무한히 올 수도 있는데 그러면 일반 매개변수는 영원히 기다려야 되니까 - 가변 매개변수는 하나만 사용할 수 있음
=> 위와 같이 혼자 그 메모리랑 그런걸 다 처먹을 수도 있으니 제한
가변 매개변수는 일단 여러 개의 매개변수는 받을 건데 몇 갠지는 모르겠고 데이터 타입은 같은 것들을 처리할 때 사용하면 됨.
+) 가변 변수는 리스트처럼 작용됨
def print_n_times(n, *values):
for i in range(n):
for value in values:
print(value)
print()
print_n_times(3, "안녕하세요", "즐거운", "파이썬 프로그래밍")
기본 매개변수
'매개변수 = 값' 형태
값은 문자, 숫자 둘다 가능함
매개변수를 입력하지 않았을 경우 매개변수에 들어가는 기본값
즉, 매개변수의 디폴트값을 정해준 게 기본 매개변수.
제약 조건 : 기본 매개변수 뒤에는 일반 매개변수가 올 수 없음
키워드 매개변수
가변 매개변수 뒤에 일반 매개변수는 올 수 없음. 하지만 기본 매개변수는 값이 정해져 있으므로 그 자리에 올 수 있음.
def print_n_times(*values, n=2):
for i in range(n):
for i in values:
print(value)
print()
print_n_times("안녕하세요", "즐거운", "파이썬 프로그래밍", 3)
이 코드의 결과는 가변 매개변수가 우선되므로
"안녕하세요", "즐거운", "파이썬 프로그래밍", 3 가 두번 출력됨
그렇다면 키워드 매개변수란 무엇이냐.
매개변수의 이름을 지정해서 입력해주는 것.
예시를 들어보겠음.
def print_n_times(*values, n=2):
for i in range(n):
for value in values:
print(value)
print()
print_n_times("안녕하세요", "즐거운", "파이썬 프로그래밍", n=3)
끝에 있는 n=3 을 보면 가변 매개변수한테 가는 게 아니라 나는 n한테 갈 거니까 말걸지 말라는 뜻이다.
리턴
함수를 실행했던 위치로 돌아가라는 뜻.
함수가 끝나는 위치.
함수를 호출한 자리에 특정 값(함수 정의에서 나온 값)을 받아서 돌려보내고 싶을 때 return을 쓰면 됨
cf) 쓸 필요 없을 때 : 함수 정의 안에서 이미 호출이고 나발이고 다 끝났을 때
재귀 함수
자기 자신을 호출하는 함수
global 키워드
지역변수를 전역변수화 시키는 명령어
appened() 함수
매개변수 하나를 리스트의 마지막의 요소로 추가함
cf) .append() / += 의 차이점
+= 는 extend() 함수와 같은 의미인데 이건 리스트와 리스트를 붙이는 거고
append는 리스트에 요소를 붙이는 것.
'공부 기록 > 파이썬' 카테고리의 다른 글
2024.04.11. 파이썬 넘파이 (0) | 2024.04.11 |
---|---|
파이썬 - 사용자 입력 받기 (0) | 2024.03.25 |
파이썬 - 정수와 실수 (0) | 2024.03.25 |
파이썬 - 따옴표와 문자열 (0) | 2024.03.25 |
2024.03.22. 파이썬 공부 (if, else, 함수) (1) | 2024.03.23 |
리스트
파이썬만의 고유한 기능들
- min(), max(), sum() : (리스트 내에서) 최소값, 최대값, 값을 모두 더함
- reversed() : 리스트 뒤집기
- enumerate() : 현재 인덱스가 몇 번째인지 확인하기
- items() : 딕셔너리로 쉽게 반복문 작성하기
리스트라는 개념은 C에는 없다. Python은 C를 통해 만들었는데 C에 있는 배열 개념을 가져와서 간략화한 게 리스트다.
차이점이 있다면 C에서는 배열 사용법이 문자열에 가깝고 선언할 때 하나의 타입만 선언 가능하다는 점이 있다.
딕셔너리는 보통 young하고 hip한 언어에 있는 함수라고 한다..(듣기론 그럼)
reversed()
temp = reversed([1, 2, 3, 4, 5, 6])
for i in temp:
print("첫 번째 반복문: {}".format(i))
for i in temp:
print("두 번째 반복문: {}".format(i))
이 코드를 살펴보자.
실제로 실행해보면 첫 번째 반복문만 실행된다.
그 이유는 reversed 함수가 제너레이터이기 때문이다.
제너레이터란 객체 지향 언어에 있는 개념으로, 일회용 함수란 뜻이다.
enumerated()
example_list = ["요소A", "요소B", "요소C"]
for i in range(len(example_list)):
print("{}번째 요소는 {}입니다.".format(i, example_list[i]))
이런식으로 작성하면 리스트의 요소를 반복할 때 현재 인덱스가 몇 번째인지 확인할 수 있다.
print("# List() 함수로 강제 변환 출력")
print(list(enumerate(example_list))
print()
실행 결과
# List() 함수로 강제 변환 출력
[(0, '요소A'), (1, '요소B'), (2, '요소C')]
딕셔너리의 items() 함수와 반복문 조합하기
딕셔너리는 items() 함수와 같이 사용하면 키와 값을 조합해서 쉽게 반복문을 작성할 수 있다.
딕셔너리는 주소값이 없다. 일명 노숙자.(집이 없어서...)

딕셔너리는 보통 보안때문에 사용한다. 키 값을 입력하지 않으면 값이 안나오기 때문이다.
예를 들어
a = { 1:2, 3:4, 5:6 }
for i in a :
print(a)
1
3
5
키값을 입력하지 않았으므로 값이 나오지 않았음
List/Dictionary | 문자열 | 튜플 |
수정, 추가, 삭제O | 추가만 가능 | 다 불가능 |
리스트 내포
range(0, 20, 2)의 요소를 i라고 할 때 i * i로 리스트를 재조합해주세요. 라는 의미를 담은 구문을 리스트 내포(List comprehensions)라고 부른다.
# 리스트를 선언함
array = [i * i for i in range(0, 20, 2)]
# 출력
print(array)
1줄로 줄일 수 있음
상황에 따라서는 뒤에 if문을 붙일 수도 있다.
문자열 연결하기
1. 괄호로 연결 => 문자열로 출력됨
2. join() 함수
< 문자열.join(문자열로 구성된 리스트) >
: 요소의 사이마다 글자를 추가하는 함수
ex. print("::".join(["1","2","3","4","5"])
=> 1::2::3::4::5
cf) split 함수 => 중간의 요소를 지우고 나눔(괄호 안에 있는 것 기준)
함수
함수의 기본
def 함수이름():
문장
매개변수
def 함수이름(매개변수, 매개변수, ...):
문장
기본적으로 매개변수를 n개 입력하고 싶으면 n개를 먼저 정의해야 한다. 하지만 항상 예외는 존재하는데
1) 가변 매개변수 2) 기본 매개변수(예를 들면 range())
가변 매개변수
함수는 함수를 선언할 때의 매개변수와 함수를 호출할 때의 매개변수가 같아야 했지만 가변 매개변수는 매개변수를 원하는 만큼 받아올 수 있다. 무한대로 가능.
사용 방법은 포인터랑 똑같이 생김.
def 함수 이름(매개변수, 매개변수, ..., *가변 매개변수):
문장
단 조건이 있음
- 가변 매개변수 뒤에는 일반 매개변수는 올 수 없음
=> 가변 매개변수가 무한히 올 수도 있는데 그러면 일반 매개변수는 영원히 기다려야 되니까 - 가변 매개변수는 하나만 사용할 수 있음
=> 위와 같이 혼자 그 메모리랑 그런걸 다 처먹을 수도 있으니 제한
가변 매개변수는 일단 여러 개의 매개변수는 받을 건데 몇 갠지는 모르겠고 데이터 타입은 같은 것들을 처리할 때 사용하면 됨.
+) 가변 변수는 리스트처럼 작용됨
def print_n_times(n, *values):
for i in range(n):
for value in values:
print(value)
print()
print_n_times(3, "안녕하세요", "즐거운", "파이썬 프로그래밍")
기본 매개변수
'매개변수 = 값' 형태
값은 문자, 숫자 둘다 가능함
매개변수를 입력하지 않았을 경우 매개변수에 들어가는 기본값
즉, 매개변수의 디폴트값을 정해준 게 기본 매개변수.
제약 조건 : 기본 매개변수 뒤에는 일반 매개변수가 올 수 없음
키워드 매개변수
가변 매개변수 뒤에 일반 매개변수는 올 수 없음. 하지만 기본 매개변수는 값이 정해져 있으므로 그 자리에 올 수 있음.
def print_n_times(*values, n=2):
for i in range(n):
for i in values:
print(value)
print()
print_n_times("안녕하세요", "즐거운", "파이썬 프로그래밍", 3)
이 코드의 결과는 가변 매개변수가 우선되므로
"안녕하세요", "즐거운", "파이썬 프로그래밍", 3 가 두번 출력됨
그렇다면 키워드 매개변수란 무엇이냐.
매개변수의 이름을 지정해서 입력해주는 것.
예시를 들어보겠음.
def print_n_times(*values, n=2):
for i in range(n):
for value in values:
print(value)
print()
print_n_times("안녕하세요", "즐거운", "파이썬 프로그래밍", n=3)
끝에 있는 n=3 을 보면 가변 매개변수한테 가는 게 아니라 나는 n한테 갈 거니까 말걸지 말라는 뜻이다.
리턴
함수를 실행했던 위치로 돌아가라는 뜻.
함수가 끝나는 위치.
함수를 호출한 자리에 특정 값(함수 정의에서 나온 값)을 받아서 돌려보내고 싶을 때 return을 쓰면 됨
cf) 쓸 필요 없을 때 : 함수 정의 안에서 이미 호출이고 나발이고 다 끝났을 때
재귀 함수
자기 자신을 호출하는 함수
global 키워드
지역변수를 전역변수화 시키는 명령어
appened() 함수
매개변수 하나를 리스트의 마지막의 요소로 추가함
cf) .append() / += 의 차이점
+= 는 extend() 함수와 같은 의미인데 이건 리스트와 리스트를 붙이는 거고
append는 리스트에 요소를 붙이는 것.
'공부 기록 > 파이썬' 카테고리의 다른 글
2024.04.11. 파이썬 넘파이 (0) | 2024.04.11 |
---|---|
파이썬 - 사용자 입력 받기 (0) | 2024.03.25 |
파이썬 - 정수와 실수 (0) | 2024.03.25 |
파이썬 - 따옴표와 문자열 (0) | 2024.03.25 |
2024.03.22. 파이썬 공부 (if, else, 함수) (1) | 2024.03.23 |