λͺ©μ°¨
λ°©νλμ μ½λ©ν μ€νΈ 곡λΆλ₯Ό νκΈ° μν΄μ λκ³ λκ³ λ³Ό κ²Έ
νμ΄μ¬μ κ΄λ ¨λ κ°λ¨ν κ°λ λ€μ ν νμ΄μ§μ μ 리ν΄λ³΄μλ€!
μ λ ₯κ³Ό μΆλ ₯
μ λ ₯
- input() : μ¬μ©μλ‘λΆν° λ¬Έμμ΄ ν μ€μ μ λ ₯λ°λλ€.
- map() : λͺ¨λ μμμ μ λ¬ν ν¨μ νλμ© μ μ©ν κ°μ²΄ λ°ν
# ννμ ννμ κ°μ²΄μ΄λ―λ‘ λ€μκ³Ό κ°μ΄ μΈν¨νΉ κ°λ₯
a, b, c = map(int, input().split())
# listλ‘ λ³ν κ°λ₯
data = list(map(int, input().split()))
μ λ ₯λμΌλ‘ μΈν μνμκ° μ΄κ³Ό μ€λ₯ λ°μμ
μμ€ν λΌμ΄λΈλ¬λ¦¬μ μ μλ readline() μ΄μ©
import sys
str = sys.stdin.readline().rstrip() # rstrip()μΌλ‘ μ€λ°κΏ μμ
print(str)
μΆλ ₯
print() μ΄μ©, endλ₯Ό μ΄μ©ν΄ λλ¬Έμ μ§μ κ°λ₯
print("HELLO") # μΆλ ₯ ν μ€λ°κΏ
print("HELLO",end=" ") #μΆλ ₯ ν ν μΉΈ 곡백
μ½λ μνμκ° μΈ‘μ
import time
start_time = time.time() # μΈ‘μ μμ
# νλ‘κ·Έλ¨ μμ€μ½λ
end_time = time.time() # μΈ‘μ μ’
λ£
print(f"time: {end_time - start_time}") # μν μκ° μΆλ ₯
# print(f"time: {end_time - start_time:.6f}") # μν μκ° μΆλ ₯
μ½ν μμ ν΅μμ μΌλ‘ 5μ΄ μ΄λ΄μ μννλ κ²μ΄ μκ°λ³΅μ‘λ μΈ‘λ©΄μμ ν¨μ¨μ μΈ μ½λλΌκ³ νλ€!
μλ£ν
μ μν μ€μν 볡μμν λ¬Έμμ΄ λ¦¬μ€νΈ νν λμ λ리
μ€μν
μ€μν μ£Όμ!
μ»΄ν¨ν° μμ€ν
λ΄μ λ°μ΄ν° μ²λ¦¬μ μ¬μλλ κ²μ 2μ§μ 체κ³λ‘, μ€μλ₯Ό μ νν ννλͺ»ν¨
round()λ₯Ό μ΄μ©νκΈ°
a = .3+.6
if round(a, 4) == .9: # round() μ¬μ©νμ§ μμΌλ©΄ False
print(True)
else:
print(False)
>>> True
μ§μννλ²
e νΉμ Eλ‘ μ§μλ₯Ό ννν μ μλ€. eλ€μ μ€λ μλ 10μ μ§μλ₯Ό νννλλ°
λ§μ½ 1e2 λΌλ©΄ 10^2 = 100 μ΄κ³ 2e-2 λΌλ©΄ 2*10^-2 = 0.02λ₯Ό μλ―Ένλ€.
μ μλ£ν μ°μ°μ
+ - *
/ : λλ κ²°κ³Ό μ€μνμΌλ‘ λ°ν
// : λλ κ²°κ³Όμ λͺ« λ°ν
% : λλ κ²°κ³Όμ λλ¨Έμ§ λ°ν
** : λ©±μλ₯Ό λ°ν
λ¬Έμμ΄
- μΈλ±μ±κ³Ό μ¬λΌμ΄μ±μ΄ κ°λ₯νλ€. κ·Έλ¬λ ν΄λΉ μΈλ±μ€ λ³κ²½μ λΆκ°
- '+' : λ¬Έμμ΄μ΄ μ°κ²°λλ€.
- '*' : λ¬Έμμ΄κ³Ό μ μμ κ³±νλ©΄ κ°μ λ¬Έμμ΄ λ°λ³΅
λ¬Έμμ΄ λ©μλ
count, find, index, join, upper, lower, strip(+ l,r), replace, split
",".join("abcd") #a,b,c,d
",".join(['a', 'b', 'c', 'd']) #a,b,c,d
# 리μ€νΈ --> λ¬Έμμ΄ λ³ν
arr = ['a', 'b', 'c', 'd']
result1 = str(arr)
result2 = ''.join(arr)
print(type(result1), result1) # <class 'str'> ['a', 'b', 'c', 'd'] # νν κ·Έλλ‘ λ¬Έμμ΄λ‘
print(type(result2), result2) # <class 'str'> abcd
리μ€νΈ
- μ¬λ¬κ°μ λ°μ΄ν°λ₯Ό λ€λ£¨κΈ° μν μλ£ν
- νλμ 리μ€νΈμ μλ‘ λ€λ₯Έ μλ£ν λ°μ΄ν° 곡쑴κ°λ₯
- μΈλ±μ€μ μ¬λΌμ΄μ± μ΄μ©κ°λ₯
- λ΄λΆμ κ°μ μΈλ±μ€λ₯Ό μ΄μ©νμ¬ μ κ·Ό ν λ³κ²½ κ°λ₯
리μ€νΈ μΈλ±μ±&μ¬λΌμ΄μ±
arr = [1,2,3,4]
# μΈλ±μ±
arr[0] # 1
arr[-1] # 4
# μ¬λΌμ΄μ±
arr[1:3] # [2, 3]
arr[1:3:1] # [2, 3] # μμ κ°μ κ²°κ³Ό
arr[::2] # [1, 3] # μ 체 λμ μλΆν° 2μΉΈ μ©
arr[::-1] # [4, 3, 2, 1] # μμμΌλ‘ μ¬λΌμ΄μ±
arr[::-2] # [4, 2]
리μ€νΈ μ»΄ν리ν¨μ
리μ€νΈ μ΄κΈ°νμ μ¬μ©νλ λ°©λ²
arr = [0 for i in range(0, 4)]
print(arr) # [0, 0, 0, 0]
arr = [i for i in range(10) if i % 2 == 0]
print(arr) # # 0~9μ¬μ΄ μ§μ
# 2μ°¨μ 리μ€νΈ
n = 3
m = 2
arr = [n * [0] for i in range(m)]
print(arr) # [[0, 0, 0], [0, 0, 0]]
리μ€νΈ λ©μλ
append, sort, sort(reverse=True), reverse, insert, count, remove
arr = [1,2,3,4]
arr.append(5);print(arr)
arr.sort();print(arr)
arr.sort(reverse=True);print(arr)
arr.reverse();print(arr)
arr.insert(10,1);print(arr) # λ²μ λμΌλ©΄ μλμΌλ‘ κ³μ°
print(arr.count(1))
arr.remove(1);print(arr) # 쑰건λ§μ‘± μμ μ€ κ°μ₯ μ νλ μμ
νν
- ν λ² μ μΈλ κ°μ λ³κ²½ λΆκ°
- 리μ€νΈμ λΉν΄ 곡κ°ν¨μ¨μ
- νμ© μμ
- μλ‘ λ€λ₯Έ μ±μ§μ λ°μ΄ν° λ¬Άμ΄μ κ΄λ¦¬ν λ - μ΅λ¨ κ²½λ‘ μκ³ λ¦¬μ¦μμ (W, Num) ννλ‘ μ¬μ©ν λ - ν΄μ±ν λ (λ°μ΄ν°, ν΄μ± ν€) - 리μ€νΈλ³΄λ€ λ©λͺ¨λ¦¬ ν¨μ¨μ μΌλ‘ μ¬μ©ν λ |
λμ λ리
- λΉμμ°¨μ μλ£ν
- Keyμ valueμ μμ λ°μ΄ν°λ‘ κ°μ§
- 'λ³κ²½ λΆκ°λ₯ν μλ£ν'μ Keyλ‘ μ¬μ© κ°λ₯
- λ΄λΆμ μΌλ‘ ν΄μ ν μ΄λΈμ μ΄μ©νλ―λ‘ λ°μ΄ν°μ 'μ‘°ν λ° μμ μ΄ O(1)'μ μκ°λ³΅μ‘λ
# λ°©λ² 1
name = 'μ΄λ¦'
info = {
name: 'Kassid',
'λμ΄': 25,
5 : 25
}
print(info) # {'μ΄λ¦': 'Kassid', 'λμ΄': 25, 5: 25}
# λ°©λ² 2
info1 = dict()
info1['μ΄λ¦'] = 'Kassid'
info1['λμ΄'] = 25
Key λ°μ΄ν°λ§ λ½κΈ° : keys()
κ° λ°μ΄ν°λ§ λ½κΈ° : values()
μ§ν© μλ£ν
- μ€λ³΅μ νμ©νμ§ μλλ€.
- μμκ° μλ€.
- λ°μ΄ν°μ 'μ‘°ν λ° μμ μ΄ O(1)'μ μκ°λ³΅μ‘λ
data = set([1, 2, 3, 4, 4, 4]) # {1, 2, 3, 4, 5}. 4μ€λ³΅ μ κ±°
data = {1, 1, 2, 2, 3, 4, 4, 5, 5 } # {1, 2, 3, 4, 5}
μ§ν© μλ£ν μ°μ°μ
a = {1, 2, 3, 4 }
b = {1, 4, 5, 6 }
# ν©
a | b # {1, 2, 3, 4, 5, 6}
#κ΅
a & b # {1, 4}
#μ°¨
a - b # {2, 3}
global ν€μλ
- ν¨μ λ΄λΆμμ ν¨μ λ°μ λ³μλ₯Ό μ¬μ©νκ³ μ ν λ
- λ¨μ μΆλ ₯or μ°Έμ‘°λ global μμ΄ μ°Έμ‘° κ°λ₯νλ€.
- listμ λ΄λΆ λ©μλλ₯Ό νΈμΆν΄ μ¬μ©νλ κ² λν μ€λ₯ λ―Έλ°μ
a = 0
def func():
global a
a += 1
func();print(a) # aμ κ° λ³κ²½
# 1
b = 10
def func2():
print(b+20)
func2();print(b) # λ¨μ κ°λ§ μ°Έμ‘° # bμ κ° λ―Έλ³κ²½
# 30 10
arr = [1, 2 ,3, 4, 5]
def func3():
arr.append(10)
func3();print(arr)
# [1, 2, 3, 4, 5, 10]
ν¨μ
ν¨μμ λ°ν μ¬λ¬ κ° νλ²μ κ°λ₯
μλμ κ°μ ννλ‘ μ¬λ¬ κ°μ ν λ²μ λ°νν μ μλ€.
def func(a,b):
return a+b, a-b, a*b, a/b
A,B,C,D = func(10,3)
lambda
λ€μκ³Ό κ°μ κ²½μ°μ νμ©νλ€.
- ν¨μμ κ°λ¨ν μμ± - ν¨μκ° νλ²λ§ μ°μ΄κ³ λ§λ κ²½μ° κ°λ₯μ νμ€λ‘ νν κ°λ₯ - ν¨μ μ체λ₯Ό μ λ ₯μΌλ‘ λ°λ ν¨μμμ μ μ©ν¨ |
print((lambda a, b: a + b)(1, 2)) # 3
list1 = [1, 2, 3]
list2 = [4, 5, 6]
# κ°κ°μ μμλ₯Ό λνκΈ°
result = list(map(lambda a,b: a + b, list1, list2))
# [5, 7, 9]
μ μ©ν ν
setrecursionlimit μ€μ
νμ΄μ¬μμ μ¬κ·νμ© λ¬Έμ μμ νμμ μΌλ‘ νμν μ½λ
μ¬κ· κΉμ΄ μ νμ λλ €μ€λ€.
import sys
sys.setrecursionlimit(10 ** 6)
'π¦ | μ½λ©ν μ€νΈ μ°μ΅ > μ½ν μ© νμ΄μ¬ λ¬Έλ² λͺ¨μ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Python] heapq λΌμ΄λΈλ¬λ¦¬ (0) | 2023.04.11 |
---|
λκΈ