๐ ๊ณต๋ถํ๋ ์ง์ง์ํ์นด๋ ์ฒ์์ด์ง?
[์ด๊ฒ์ด ์ฝ๋ฉ ํ ์คํธ๋ค with Python]_42_์ฝ๋ฉํ ์คํธ๋ฅผ ์ํ ํ์ด์ฌ ๋ฌธ๋ฒ ๋ณธ๋ฌธ
[์ด๊ฒ์ด ์ฝ๋ฉ ํ ์คํธ๋ค with Python]_42_์ฝ๋ฉํ ์คํธ๋ฅผ ์ํ ํ์ด์ฌ ๋ฌธ๋ฒ
์ง์ง์ํ์นด 2022. 4. 1. 01:55220401 ์์ฑ
<๋ณธ ๋ธ๋ก๊ทธ๋ ใ์ด๊ฒ์ด ์ทจ์ ์ ์ํ ์ฝ๋ฉ ํ ์คํธ๋คใ ์ ์์ ์ ์ฐธ๊ณ ํด์ ๊ณต๋ถํ๋ฉฐ ์์ฑํ์์ต๋๋ค>
1. ์ ์๋ฃํ
- ์ ์ํ
- ์ค์ํ
- ๋ฌดํ
: 1e9 = 10์ 9์ ๊ณฑ = 1,000,000,000
- round()
: ์ฒซ๋ฒ์งธ ์ธ์๋ ์ค์ํ ๋ฐ์ดํฐ, ๋๋ฒ์งธ ์ธ์๋ ๋ฐ์ฌ๋ฆผํ๊ณ ์ํ๋ ์์น
print(round(a, 4))
- ์ ์๋ฃํ ์ฐ์ฐ
- ์ฌ์น์ฐ์ฐ
: + - * /
: % ๋๋จธ์ง
: // ๋ชซ
: ** ๊ฑฐ๋ญ์ ๊ณฑ
2. ๋ฆฌ์คํธ ์๋ฃํ
: append(), remove()
- ๋ฆฌ์คํธ ๋ง๋ค๊ธฐ
a = [1, 3, 5, 3]
a = list()
n = 10
b = [0] * 10
- ๋ฆฌ์คํธ์ ์ธ๋ฑ์ฑ๊ณผ ์ฌ๋ผ์ด์ฑ
: ์ธ๋ฑ์ค๊ฐ์ ์ ๋ ฅํ์ฌ ๋ฆฌ์คํธ์ ํน์ ํ ์์์ ์ ๊ทผํ๋ ๊ฒ์ ์ธ๋ฑ์ฑ
: -1๋ ๊ฐ์ฅ ๋ง์ง๋ง ์์๊ฐ ์ถ๋ ฅ
: ๋ฆฌ์คํธ์์ ์ฐ์์ ์ธ ์์น๋ฅผ ๊ฐ์ ธ์ฌ ๋๋ ์ฌ๋ผ์ด์ฑ ์ด์ฉ
- ๋ฆฌ์คํธ ์ปดํ๋ฆฌํจ์
: ๋ฆฌ์คํธ ์ด๊ธฐํ
: ๋๊ดํธ ์์ ์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ๋ณต๋ฌธ ๋ฃ๋ ๋ฐฉ์์ผ๋ก ์ด๊ธฐํ ํ๋ ๊ฒ
# 1 ~ 10 ๊น์ง์ ์ ์ค์์ ํ์๋ง ํฌํจํ๋ ๋ฆฌ์คํธ
array = [i for i in range(20) if i % 2 == 1 ]
: 2์ฐจ์ ๋ฆฌ์คํธ ์ด๊ธฐํ
# N X N ์ด๊ธฐํ
n = 3
array = [[0] * n for _ in range(n)]
- ๋ฆฌ์คํธ ๊ด๋ จ ๊ธฐํ ๋ฉ์๋
ํจ์๋ช | ์ฌ์ฉ๋ฒ | ์ค๋ช | ์๊ฐ ๋ณต์ก๋ |
append() | ๋ณ์๋ช .append() | ๋ฆฌ์คํธ์ ์์ ํ๋ ์ฝ์ | O(!) |
sort() | ๋ณ์๋ช .sort() | ์ค๋ฆ์ฐจ์ ์ ๋ ฌ | O(NlogN) |
sort() | ๋ณ์๋ช .sort(reverse = True) | ๋ด๋ฆผ์ฐจ์ | O(NlogN) |
insert() | insert(์ฝ์ ์์น ์ธ๋ฑ์ค, ์ฝ์ ํ ๊ฐ) | ํน์ ์ธ๋ฑ์ค ์์น์ ์ฝ์ | O(N) |
reverse() | ๋ณ์๋ช .reverse() | ๋ฆฌ์คํธ ์์ ์์ ๊ฑฐ๊พธ๋ก | O(N) |
count() | ๋ณ์๋ช .count(ํน์ ๊ฐ) | ๋ฆฌ์คํธ์์ ํน์ ๊ฐ ๊ฐ์ง๋ ๋ฐ์ดํฐ ๊ฐ์ ์ธ๊ธฐ | O(N) |
remove() | ๋ณ์๋ช .remove(ํน์ ๊ฐ) | ํน์ ํ ๊ฐ ์์ ์ ๊ฑฐ, ๊ฐ์ ๊ฐ์ง ์์๊ฐ ์ฌ๋ฌ๊ฐ๋ฉด ํ๋๋ง ์ ๊ฑฐ | O(N) |
3. ๋ฌธ์์ด ์๋ฃํ
- ๋ฌธ์์ด ์ด๊ธฐํ
print("Don't you know \"Python\" ?")
- ๋ฌธ์์ด ์ฐ์ฐ
4. ํํ ์๋ฃํ
: ํํ์ ํ ๋ฒ ์ ์ธ๋ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค
: ์๊ดํธ () ์ด์ฉํ๋ค
: ๊ทธ๋ํ ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ ๋ ์์ฃผ ์ฌ์ฉํ๋ค
: ๋ค์ต์คํธ๋ผ ์ต๋จ ๊ฒฝ๋ก ์๊ณ ๋ฆฌ์ฆ ์ฒ๋ผ ์ต๋จ ๊ฒฝ๋ก ์๋ ค์ฃผ๋ ๋ด๋ถ์์ ์ฐ์ ์์ ํ๋ฅผ ์ด์ฉํ๋ค (์ฐ์ ์์ ํ ๊ฐ์ ๋ณ๊ฒฝ x)
: ๋ค์ต์คํธ๋ผ ์ต๋จ ๊ฒฝ๋ก ์๊ณ ๋ฆฌ์ฆ์์ (๋น์ฉ, ๋ ธ๋๋ฒํธ) ๋ก ๊ด๋ฆฌํ๋ค
5. ์ฌ์ ์๋ฃํ
: ํค์ ๊ฐ์ ์์ ๋ฐ์ดํฐ๋ก ๊ฐ์ง๋ค
6. ์ฌ์ ์๋ฃํ ๊ด๋ จ ํจ์
: ํค ๋ฐ์ดํฐ๋ง ๋ฝ์์ ๋ฆฌ์คํธ ์ด์ฉํ ๋๋ keys()
: ๊ฐ ๋ฐ์ดํฐ๋ง ๋ฝ์์ ๋ฆฌ์คํธ ์ด์ฉํ ๋๋ values()
7. ์งํฉ ์๋ฃํ
: ์งํฉ set ์ ์ค๋ณต์ ํ์ฉํ์ง ์๋๋ค
: ์์๊ฐ ์๋ค
: add(), update(), remove()
# 1 set ์ด์ฉ
data = set([1, 1, 2, 3, 4, 4])
# 2 {} ์ด์ฉ
data = {1, 1, 2, 3, 4, 4}
8. ์กฐ๊ฑด๋ฌธ
- if ~ elif ~ else
- ๋น๊ต์ฐ์ฐ์
- ==
- !=
- >
- <
- >=
- <=
- ๋
ผ๋ฆฌ์ฐ์ฐ์
- and : ๋ชจ๋ ์ฐธ์ผ๋ ์ฐธ
- or : ํ๋๋ง ์ฐธ์ด์ด๋ ์ฐธ
- not : ๊ฑฐ์ง์ผ ๋ ์ฐธ
- ๊ธฐํ ์ฐ์ฐ์
- x in list : ๋ฆฌ์คํธ ์์ x ๊ฐ ๋ค์ด์์ ๋ ์ฐธ
- x not in ๋ฌธ์์ด : ๋ฌธ์์ด ์์ x๊ฐ ๋ค์ด๊ฐ ์์ง ์์ ๋ ์ฐธ
9. ๋ฐ๋ณต๋ฌธ
- while : ์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ผ ๋ ํํด์, ๋ฐ๋ณต์ ์ผ๋ก ์ํ!!
- for
- for ๋ณ์ in ๋ฆฌ์คํธ :
- for i in range(์์๊ฐ, ๋๊ฐ + 1)
10. ํจ์
: ํจ์ ๋ด๋ถ์์ ์ฌ์ฉ๋๋ ๋ณ์ ๊ฐ ์ ๋ฌ๋ฐ๊ธฐ ์ํด ๋งค๊ฐ๋ณ์ ์ ์
: ์ด๋ ํ ๊ฐ ๋ฐํํ๊ณ ์ return ์ฌ์ฉ
def ํจ์๋ช
(๋งค๊ฐ๋ณ์) :
์คํ ์์ค์ฝ๋
return ๋ฐํ ๊ฐ
- ๋๋ค
print((lambda a, b : a+b)(3, 7))
11. ์ ์ถ๋ ฅ
- ์ ๋ ฅ
data = list(map(int, input().split()))
import sys
data = sys.stdin.readline()
12. ๋ด์ฅํจ์
: import iterable
- sum
- min & max
- eval
- sorted([ ]) + key = lambda x : x[1]
13. itertools
- permutations
: r ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ด ์ ์ผ๋ ฌ๋ก ๋์ดํ๋ ๋ชจ๋ ๊ฒฝ์ฐ (์์ด)
- combinations
: r ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ด ์ ์์๋ฅผ ๊ณ ๋ คํ์ง ์๊ณ ๋์ดํ๋ ๋ชจ๋ ๊ฒฝ์ฐ (์กฐํฉ)
- product
: r ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฝ์ ์ผ๋ ฌ๋ก ๋์ดํ๋ ๋ชจ๋ ๊ฒฝ์ฐ (์์ด) + ์์ ์ค๋ณต!! (repeat = 2 ์ด๋ฉด 2๊ฐ ๋ฝ๋ ์ค๋ณต ์์ด)
- combinations_with_Replacement
: r๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฝ์ ์์๋ฅผ ๊ณ ๋ คํ์ง ์๊ณ ๋์ดํ๋ ๋ชจ๋ ๊ฒฝ์ฐ (์กฐํฉ) + ์์ ์ค๋ณต!! (์ค๋ณต ์กฐํฉ)
14. heapq
: ํ์ ๋ค์ต์คํธ๋ผ ์ต๋จ ์๊ณ ๋ฆฌ์ฆ + ์ฐ์ ์์ ํ ๊ธฐ๋ฅ
: ์ต์๋จ ์์๋ ํญ์ ์์ ์์
- heapq.heappush()
: ํ์ ์์ ์ฝ์
- heapq.heappop()
: ํ์์ ์์๋ฅผ ๋นผ๊ธฐ
15. bisect
: ์ด์ง ํ์ ์ฝ๊ฒ ๊ตฌํ
: ์ ๋ ฌ๋ ๋ฐฐ์ด์์ ํน์ ํ ์์๋ฅผ ์ฐพ์ ๋ ํจ๊ณผ์
- bisect_left(a, x)
: ์ ๋ ฌ๋ ์์๋ฅผ ์ ์งํ๋ฉด์ ๋ฆฌ์คํธ a์ ๋ฐ์ดํฐ x๋ฅผ ์ฝ์ ํ ๊ฐ์ฅ ์ผ์ชฝ ์ธ๋ฑ์ค ์ฐพ๊ธฐ
- bisect_right(a, x)
: ์ ๋ ฌ๋ ์์๋ฅผ ์ ์งํ๋ฉด์ ๋ฆฌ์คํธ a์ ๋ฐ์ดํฐ x๋ฅผ ์ฝ์ ํ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์ธ๋ฑ์ค ์ฐพ๊ธฐ
16. collections
: deque, Counter
- deque : ๋จผ์ ๋ค์ด์จ ์์๊ฐ ํญ์ ๋จผ์ ๋๊ฐ๋ค
- from collections import Counter
- popleft()
- appendleft()
- from collections import Counter
- Counter : ๋ฑ์ฅ ํ์๋ฅผ ์ธ๋ ๊ธฐ๋ฅ
- from collections import Counter
17. math
: ํฉํ ๋ฆฌ์ผ, ์ ๊ณฑ๊ทผ, ์ต๋๊ณต์ฝ์ ๊ณ์ฐ
: import mat
- factorial(x)
: x! ๊ณ์ฐ
- sqrt(x)
: x์ ์ ๊ณฑ๊ทผ
- gcd(a,b)
: a, b์ ์ต๋ ๊ณต์ฝ์
- pi
- e