가수면
Python 함수 본문
-파이썬-
우클릭 후 실행 권장(상단의 실행이나 실행창의 실행 버튼을 누를 경우 다른 파일이 실행될 수가 있음)
*문자열 더하기*
a = 2
b = 1
print(a+b)
3
a = 'jihyeon'
b = 'choi'
print(a+b)
jihyeonchoi
*리스트*
a_list = ['사과','배','감']
print(a_list[0])
사과
.index(값)
값에 해당하는 index를 반환. 시간복잡도 n
*자바스크립트, 파이썬 리스트 추가*
a_list = ['사과','배','감']
a_list.append('수박') 자바스크립트에선 .push
print(a_list)
['사과', '배', '감', '수박']
.extend()
append는 하나로 추가하는데 extend는 전부를 추가함
a = ['Tick', 'Tock', 'Song']
b = ['Ping', 'Pong']
a.append(b)
print(a) // ['Tick', 'Tock', 'Song', ['Ping', 'Pong']]
c = ['Tick', 'Tock', 'Song']
d = ['Ping', 'Pong']
c.extend(d)
print(c) // ['Tick', 'Tock', 'Song', 'Ping', 'Pong']
*딕셔너리*
a_dict = {'name':'bob','age':27}
print(a_dict['name'])
bob
*함수*
def sum(a,b):
return a+b
result = sum(1,2)
print(result)
3
def sum(a,b):
print('더하자!')
return a+b
result = sum(1,2)
print(result)
더하자!
3
*조건문*
def is_adult(age):(: = 들여쓰기. 나의 내용물입니다)
if age > 20:
print('성인입니다')
else:
print('청소년입니다')
is_adult(15)
청소년입니다
*python 반복문 예제*
(1) 리스트형
fruits = ['사과','배','배','감','수박','귤','딸기','사과','배','수박']
for aaa in fruits:
print(aaa)
fruits 목록 다 나옴
fruits = ['사과','배','배','감','수박','귤','딸기','사과','배','수박']
count = 0
for aaa in fruits:
if aaa ==(if aaa가 사과라면) '사과':
count +=(카운트를 하나 늘려줘) 1
print(count)
2
(2) 딕셔너리형
people = [{'name': 'bob', 'age': 20},
{'name': 'carry', 'age': 38},
{'name': 'john', 'age': 7},
{'name': 'smith', 'age': 17},
{'name': 'ben', 'age': 27}]
for ppp in people:
if ppp['age'] > 20:
print(ppp['name'])
carry
ben
.items()
딕셔너리의 Key, Value 쌍 얻을 수 있음
mygraph = {
'A': {'B': 8, 'C': 1, 'D': 2},
'B': {},
'C': {'B': 5, 'D': 2},
}
mygraph.items()
// dict_items([('A', {'B': 8, 'C': 1, 'D': 2}), ('B', {}), ('C', {'B': 5, 'D': 2})])
심화
for adjacent, weight in mygraph.items():
print("adjacent ::", adjacent)
print("weight ::", weight)
//
adjacent :: A
weight :: {'B': 8, 'C': 1, 'D': 2}
adjacent :: B
weight :: {}
adjacent :: C
weight :: {'B': 5, 'D': 2}
for adjacent, weight in mygraph["A"].items():
print("adjacent ::", adjacent)
print("weight ::", weight)
//
adjacent :: B
weight :: 8
adjacent :: C
weight :: 1
adjacent :: D
weight :: 2
range()
range(stop): 0부터 stop-1까지의 숫자를 생성
range(start, stop): start부터 stop-1까지의 숫자를 생성
range(start, stop, step): start부터 stop-1까지 step 간격으로 숫자를 생성
for i in range(10):
print(i)
// 0부터 9까지 출력
for i in range(1, 10):
print(i)
// 1부터 9까지 출력 (시작 숫자, 마지막-1)
len()
.length
.pop()
자바스크립트의 splice와 비슷하게 동작함
my_list = ['a', 'b', 'c', 'd']
item = my_list.pop() # 'd'를 반환하고 리스트에서 제거
item = my_list.pop(1) # 'b'를 반환하고 리스트에서 제거
.sort()
.sort() - 작은 순 정렬
.sort(reverse=True) - 큰 순 정렬
.sorted(list)
튜플 형태 (x, y)라면 x순으로 정렬됨. x가 같다면 y순으로 정렬됨
.sorted(인자, key=lambda x(인자요소): x[1] / x[0], reverse=True)
key값을 설정했을 때 만약 같은 값이 있다면 원래 존재하던 순으로 정렬됨 (추가된 순)
a = [(1, 2), (5, 1), (0, 1), (5, 2), (3, 0)]
c = sorted(a, key = lambda x : x[0])
c // [(0, 1), (1, 2), (3, 0), (5, 1), (5, 2)]
d = sorted(a, key = lambda x : x[1])
d // [(3, 0), (5, 1), (0, 1), (1, 2), (5, 2)]
.enumerate()
리스트의 index와 value를 추출
.entries()같은 거.
item = ["First", "Second", "Third"]
for val in enumerate(item):
print(val)
//
(0, 'First')
(1, 'Second')
(2, 'Third')
for i, val in enumerate(item):
print("{}번째 값은 {}입니다".format(i, val))
//
0번째 값은 First입니다
1번째 값은 Second입니다
2번째 값은 Third입니다
응용
data = [3, 6, 3, 4]
data = [(index, item) for index, item in enumerate(data)]
print(data)
# [(0, 3), (1, 6), (2, 3), (3, 4)]
.eval()
eval안의 문자열인 계산식을 알아서 계산해줌
eval("1+2")
// 3
map(function, iterable)
iterable의 모든 요소에 function을 적용
a = [1.2, 2.5, 3.7, 4.6]
b = list(map(int, a))
print(b)
# [1, 2, 3, 4]
구분자.join()
구분자.join(리스트)를 이용하면 리스트의 값과 값 사이에 '구분자'에 들어온 구분자를 넣어서 하나의 문자열로 합쳐줌
삼항연산자
print("NO" if isNo else '\n'.join(result))
max(), min()
iterable 자료의 요소 중 가장 큰(작은) 값을 반환
a = [1, 2, 3]
print(min(a))
# 1
key lambda 사용
a = [(0, 1), (1, 6), (2, 3)]
print(max(a, key=lambda x: x[1]))
# (1, 6)
배열 뒤집기
b = [6, 5, 4]
print(list(reversed(b)))
# [4, 5, 6]
'Python > Python' 카테고리의 다른 글
파이썬 내장 라이브러리 (0) | 2023.11.13 |
---|---|
Python 문법 (0) | 2023.11.08 |
기초 문법 및 크롤링 복습 (0) | 2022.10.23 |
Flask (API만들기) (0) | 2022.10.20 |