[Python] TIL 02

jiiyoungΒ·2021λ…„ 11μ›” 27일
0

πŸ’ΎμŠ¬λΌμ΄μ‹±
-μ²˜μŒλΆ€ν„°λ‚˜ λκΉŒμ§€ ν•˜λŠ” 경우 곡백으둜 λΉ„μ›Œλ„ 상관 μ—†λ‹€.
-μ²˜μŒλΆ€ν„° μ…€λ•ŒλŠ” μΈλ±μŠ€κ°€ 0λΆ€ν„°μ΄μ§€λ§Œ, λμ—μ„œλΆ€ν„° μ…€λ•ŒλŠ” μΈλ±μŠ€κ°€ -1뢀터이닀.

jumin = "990120-1234567"

print("성별: " + jumin[7])
print("μ—°: " + jumin[0:2]) # 0λΆ€ν„° 2 μ§μ „κΉŒμ§€ (0,1)
print("μ›”: " + jumin[2:4])
print("일: " + jumin[4:6])
print("생년월일: " + jumin[:6]) # μ²˜μŒλΆ€ν„° 6 μ§μ „κΉŒμ§€
print("λ’€ 7자리: " + jumin[7:]) # 7λΆ€ν„° λκΉŒμ§€
print("λ’€ 7자리 (λ’€μ—μ„œλΆ€ν„°): " + jumin[-7:])
#맨 λ’€μ—μ„œ 7λ²ˆμ§ΈλΆ€ν„° λκΉŒμ§€

πŸ’Ύλ¬Έμžμ—΄ 처리 ν•¨μˆ˜
-findμ—μ„œλŠ” μ›ν•˜λŠ” 값이 λ³€μˆ˜μ— 없을 λ•Œ -1이 좜λ ₯λœλ‹€. 반면, indexμ—μ„œλŠ” μ›ν•˜λŠ” 값이 없을 λ•Œ 였λ₯˜λ₯Ό 좜λ ₯ν•˜λ©΄μ„œ ν”„λ‘œκ·Έλž¨μ„ μ’…λ£Œν•œλ‹€.

python = "Python is Amazing"
print(python.lower()) # λ¬Έμž₯을 μ†Œλ¬Έμžλ‘œ λ°”κΏ”μ€Œ
print(python.upper()) # λ¬Έμž₯을 λŒ€λ¬Έμžλ‘œ λ°”κΏ”μ€Œ
print(python[0].isupper()) # ν•΄λ‹Ή λ¬Έμžμ—΄μ΄ λŒ€λ¬ΈμžμΈμ§€ νŒλ³„ν•΄μ€Œ (boolνƒ€μž…)
print(len(python)) # λ¬Έμžμ—΄μ˜ 길이λ₯Ό μ•Œλ €μ€Œ
print(python.replace("Python", "Java")) # λ¬Έμžμ—΄ μ•ˆμ— μžˆλŠ” 값듀을 λ°”κΏ€ 수 있음

index = python.index("n") # μ–΄λ–€ λ¬Έμžκ°€ μ–΄λŠ μœ„μΉ˜μ— μžˆλŠ”μ§€ μ•Œλ €μ€Œ
print(index)
index = python.index("n", index + 1) # ν•΄λ‹Ή μΈλ±μŠ€λΆ€ν„° μœ„μΉ˜ 탐색을 μ‹œμž‘ν•¨
print(index)

print(python.find("n")) # ν•΄λ‹Ή λ¬Έμžκ°€ ν¬ν•¨λœ μœ„μΉ˜λ₯Ό μ•Œλ €μ€Œ
print(python.find("Java")) # μ›ν•˜λŠ” 값이 λ³€μˆ˜μ— ν¬ν•¨λ˜μ§€ μ•Šμ€ 경우 -1이 좜λ ₯됨

print(python.count("n")) # n이 λ³€μˆ˜μ—μ„œ 총 λͺ‡λ²ˆ λ“±μž₯ν•˜λŠ”μ§€ 갯수λ₯Ό μ„Έμ–΄μ€Œ


πŸ’Ύλ¬Έμžμ—΄ 포맷
-%s둜만 μ“°λ©΄ μ •μˆ˜ν˜•μ΄λ“  λ¬Έμžν˜•μ΄λ“  상관없이 κ°’μΆœλ ₯이 κ°€λŠ₯ν•˜λ‹€.
-μ•„λž˜μ™€ 같이 μ—¬λŸ¬κ°€μ§€ 방법이 μžˆλ‹€.

# 방법1
print("λ‚˜λŠ” %dμ‚΄μž…λ‹ˆλ‹€." % 20)
print("λ‚˜λŠ” %s을 μ’‹μ•„ν•΄μš”" % "파이썬")
print("Apple은 %c둜 μ‹œμž‘ν•΄μš”." % "A") # ν•œκΈ€μžλ§Œ λ°›κ² λ‹€!

print("λ‚˜λŠ” %sμ‚΄μž…λ‹ˆλ‹€." % 20)
print("λ‚˜λŠ” %s색과 %s색을 μ’‹μ•„ν•΄μš”" % ("νŒŒλž€", "λΉ¨κ°„"))

# 방법2
print("λ‚˜λŠ” {}μ‚΄μž…λ‹ˆλ‹€.".format(20))
print("λ‚˜λŠ” {}색과 {}색을 μ’‹μ•„ν•΄μš”".format("νŒŒλž€", "λΉ¨κ°„"))
print("λ‚˜λŠ” {0}색과 {1}색을 μ’‹μ•„ν•΄μš”".format("νŒŒλž€", "λΉ¨κ°„"))
# format 뒀에 μžˆλŠ” 값듀을 0번째 1번째둜 μƒκ°ν•΄μ„œ 각각 μˆœλ²ˆμ— 맞게 싀행이 됨
print("λ‚˜λŠ” {1}색과 {0}색을 μ’‹μ•„ν•΄μš”".format("νŒŒλž€", "λΉ¨κ°„"))

# 방법3
print("λ‚˜λŠ” {age}살이며, {color}색을 μ’‹μ•„ν•΄μš”".format(age = 20, color = "μ£Όν™©"))
print("λ‚˜λŠ” {age}살이며, {color}색을 μ’‹μ•„ν•΄μš”".format(color = "μ£Όν™©", age = 20))

# 방법4
age = 22
color = "검은"
print(f"λ‚˜λŠ” {age}살이며, {color}색을 μ’‹μ•„ν•΄μš”")

πŸ’Ύλ¦¬μŠ€νŠΈ

subway = ["μœ μž¬μ„", "μ‘°μ„Έν˜Έ","λ°•λͺ…μˆ˜"]
print(subway)

print(subway.index("μ‘°μ„Έν˜Έ")) 
#μ‘°μ„Έν˜Έκ°€ λͺ‡λ²ˆμ§Έ 칸에 νƒ”λŠ”κ°€?

subway.append("ν•˜ν•˜") #ν•˜ν•˜κ°€ λ‹€μŒ 칸에 탐
print(subway)

subway.insert(1,"μ •ν˜•λˆ") # μœ μž¬μ„ μ‘°μ„Έν˜Έ 사이에 νƒœμ›Œλ΄„
print(subway)

print(subway.pop()) # 맨 λ’€μ—μ„œλΆ€ν„° ν•œλͺ…μ”© 꺼냄
print(subway)

print(subway.count("μœ μž¬μ„")) # 같은 μ΄λ¦„μ˜ μ‚¬λžŒμ΄ λͺ‡λͺ… μžˆλŠ”μ§€ 확인

-λ¦¬μŠ€νŠΈλŠ” 정렬도 κ°€λŠ₯ν•˜λ‹€.

num_list = [5,2,4,3,1]
num_list.sort() # μˆœμ„œλŒ€λ‘œ μ •λ ¬ν•΄μ€Œ
print(num_list)

num_list.reverse() # μˆœμ„œ 뒀집기 κ°€λŠ₯
print(num_list)

num_list.clear() # 리슀트 λͺ¨λ‘ μ§€μš°κΈ°
print(num_list)

-λ‹€μ–‘ν•œ μžλ£Œν˜•λ„ ν•¨κ»˜ μ‚¬μš©μ΄ κ°€λŠ₯ν•˜λ‹€.
ex) mix_list = ["μ‘°μ„Έν˜Έ", 20, True]
-리슀트 ν™•μž₯이 κ°€λŠ₯ν•˜λ‹€.
ex) num_list.extend(mix_list) -> [5,2,4,3,1,'μ‘°μ„Έν˜Έ', 20, True]

πŸ’Ύμ‚¬μ „ μžλ£Œν˜•

fruit = {3:"μˆ˜λ°•", 100:"λ”ΈκΈ°"} # μ •μˆ˜ν˜•μ„ 톡해 ν‚€ μ„ μ–Έ
# 사전 μžλ£Œν˜• κ°€μ Έμ˜€λŠ” 법1
print(fruit[3]) 
print(fruit[100])

print(fruit.get(3))

fruit[5]처럼 5λΌλŠ” ν‚€κ°€ μ—†λ‹€λ©΄ Traceback μ—λŸ¬κ°€ λœ¨λ©΄μ„œ μ’…λ£Œλœλ‹€.
ν•˜μ§€λ§Œ fruit.get(5)둜 μž‘μ„±ν•˜λ©΄ None이라고 뜨고 λ‹€μŒ λ¬Έμž₯을 μ‹€ν–‰ν•œλ‹€.
fruit.get(5,"μ‚¬μš© κ°€λŠ₯")이라고 μž‘μ„±ν•˜λ©΄ 5λΌλŠ” 값을 κ°€μ Έμ˜€λ €κ³  μ‹œλ„ν•˜κ³ , 있으면 5λ₯Ό κ°€μ Έμ˜€κ³  μ—†μœΌλ©΄ 'μ‚¬μš© κ°€λŠ₯'이라고 좜λ ₯λœλ‹€.

사전 μžλ£Œν˜•μ— 값이 μžˆλŠ”μ§€ μ—†λŠ”μ§€ 확인할 수 μžˆλ‹€.

print(3 in fruit) # 3μ΄λΌλŠ” ν‚€κ°€ fruit μ•ˆμ— μžˆλŠ”κ°€? # True
print(5 in fruit) # False

μ •μˆ˜ μžλ£Œν˜• 뿐만 μ•„λ‹ˆλΌ string μžλ£Œν˜•μœΌλ‘œλ„ ν•  수 μžˆλ‹€.

fruit = {"A-3":"μˆ˜λ°•", "B-100":"λ”ΈκΈ°"}

print(fruit["A-3"]) 
print(fruit["B-100"])

fruit["C-50"] = "λ°€" # μƒˆλ‘œμš΄ ν‚€ μΆ”κ°€
fruit["A-3"] = "고ꡬ마" # κΈ°μ‘΄ ν‚€κ°’ update
print(fruit)

del fruit["A-3"] # ν‚€ μ‚­μ œ
print(fruit)

print(fruit.keys()) # keyλ“€λ§Œ 좜λ ₯
print(fruit.values()) # valueλ“€λ§Œ 좜λ ₯
print(fruit.items()) # key, value 쌍으둜 좜λ ₯

fruit.clear() # λͺ¨λ“  ν‚€ μ‚­μ œ
print(fruit)

πŸ’ΎνŠœν”Œ
-νŠœν”Œμ€ add κΈ°λŠ₯ μ œκ³΅ν•˜μ§€ X
-λ”°λΌμ„œ 값을 μΆ”κ°€ν•˜κ±°λ‚˜ 변경은 λΆˆκ°€ν•˜λ‹€.
-κ³ μ •λœ 값에 λŒ€ν•΄μ„œλ§Œ μ“Έ 수 있고, ν•œλ²ˆμ— κ°’ 선언이 κ°€λŠ₯ν•˜λ‹€.
(name, age, hobby) = ("이지아",20,"μ½”λ”©")

0개의 λŒ“κΈ€