μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- λ μ
- μν
- νλ‘κ·Έλλ°
- html
- κ°λ°
- μ±
- λ°μ΄ν°λ² μ΄μ€
- Kλ°°ν°λ¦¬λ 볼루μ
- ν°μ€ν 리μ±λ¦°μ§
- λ°μν
- λΌνλΌμ€μλ§λ
- μ€λΈμ
- Python
- μΉνμ΄μ§λ§λ€κΈ°
- css
- μ½λ©
- νμ΄μ¬
- μλ°μ€ν¬λ¦½νΈ
- Kλ°°ν°λ¦¬
- JavaScript
- λ§μΌλ΄κ°μΈμμλ€μμ°λ€λ©΄
- κΉλ―Έκ²½μλ§νμμ
- μΉνΌλΈλ¦¬μ±
- μ»΄ν¨ν°κ³Όν
- μ€λΌν΄
- Java
- μλ°
- ComputerScience
- database
- 리μ‘νΈ
- Today
- Total
JiYoung Dev π₯
[νμ΄μ¬] μμ κ°μ²΄ μ§ν₯ μΈμ΄ / κ°λ³ κ°μ²΄ vs λΆλ³ κ°μ²΄ / μ μ©ν ν¨μ / λͺ¨λ λ³Έλ¬Έ
[νμ΄μ¬] μμ κ°μ²΄ μ§ν₯ μΈμ΄ / κ°λ³ κ°μ²΄ vs λΆλ³ κ°μ²΄ / μ μ©ν ν¨μ / λͺ¨λ
Shinjio 2023. 2. 21. 22:012023.02.21 μ½λμ νμ΅λ΄μ© μ 리
π νμ΄μ¬μ μμ κ°μ²΄ μ§ν₯ μΈμ΄?
νμ΄μ¬μ μμ κ°μ²΄ μ§ν₯ μΈμ΄μ΄λ€.
μ¦, νμ΄μ¬μ λͺ¨λ κ²μ κ°μ²΄λΌλ μλ―Έ
μ°λ¦¬κ° μΌλ°μ μΌλ‘ μ¬μ©νλ μ«μ, ν¨μ, 리μ€νΈ, λ¬Έμμ΄ λ±μ λͺ¨λ μ΄λ€ ν΄λμ€μ μΈμ€ν΄μ€λΌκ³ ν μ μμ
βΌβΌβΌ type ν¨μλ₯Ό μ΄μ©ν user1μ ν΄λμ€ μΆλ ₯ βΌβΌβΌ
__main__ λ μ§κΈ μ€νλκ³ μλ νμΌμ λνλ.
μ¦, μ§κΈ μ€ννκ³ μλ νμΌμ User ν΄λμ€λ₯Ό λ»ν¨
βΌβΌβΌ type ν¨μλ₯Ό μ΄μ©ν λ€μν μλ£νμ ν΄λμ€ μΆλ ₯ βΌβΌβΌ
μ μ, λ¬Έμμ΄, 리μ€νΈ, μ¬μ , νν, ν¨μ λ± λͺ¨λ μ΄λ€ ν΄λμ€μ μΈμ€ν΄μ€λ€
μ΄λ¬ν ν΄λμ€λ€μ νμ΄μ¬ κ°λ°μλ€μ΄ μμ£Ό μ¬μ©νλ ν¨μλ€μ ν΄λμ€λ‘ 미리 λ§λ€μ΄ λ κ²
λ§μ½, νμ΄μ¬μμ μ½λ μμ± μ λ³μμ 1μ λμ νλ κ²μ int ν΄λμ€λ‘ λ§λ 1μ λνλ΄λ μΈμ€ν΄μ€λ₯Ό μμ±ν κ²μ΄κ³ ,
λ¬Έμμ΄ ""μ μ λ ₯νλ κ²μ str ν΄λμ€λ‘ λ§λ λΉ λ¬Έμμ΄μ λνλ΄λ μΈμ€ν΄μ€λ₯Ό μμ±ν κ²
ν¨μλ₯Ό μ μνλ κ²λ λ€μ functionμ΄λΌλ ν΄λμ€μ μΈμ€ν΄μ€λ₯Ό λ§λλ κ²
appendλ₯Ό ν΅ν΄ 리μ€νΈμ κ°μ μΆκ°νλ κ²μ list ν΄λμ€μ 미리 μ μλ appendλΌλ λ©μλλ₯Ό κΊΌλ΄ μ°λ κ²μ΄λΌκ³ ν μ μμ
μ¦, νμ΄μ¬μ μλ λͺ¨λ κ²λ€μ νΉμ ν΄λμ€μ μΈμ€ν΄μ€λ‘ μμ±
λ°λΌμ νμ΄μ¬μμ μ½λλ₯Ό μμ±νκ² λλ©΄ μ°λ¦¬λ λͺ¨λ₯΄λ μ¬μ΄μ κ°μ²΄λ₯Ό μμ±νκ³ κ°μ²΄ μ§ν₯ νλ‘κ·Έλ¨μ νκ³ μλ κ²
→ νμ΄μ¬μ μμ κ°μ²΄ μ§ν₯ μΈμ΄λΌκ³ νλ μ΄μ
μ μ°¨ μ§ν₯ νλ‘κ·Έλ¨μ΄λ?
κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°μ΄ λ±μ₯νκΈ° μ΄μ μ 'μ μ°¨ μ§ν₯ νλ‘κ·Έλλ°'μ΄ μμμ. μ μ°¨ μ§ν₯ νλ‘κ·Έλλ°μ κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°κ³Ό λ¬λ¦¬ 'κ°μ²΄'λΌλ κ°λ μ΄ μμ. λμ νλ‘κ·Έλ¨μ νμν λμμ ν¨μλΌλ λ¨μλ‘ λ¬Άμ΄μ μ¬μ©. κ·Έλ¦¬κ³ νλ‘κ·Έλ¨μ μ€νν λ λͺ λ Ήλ€μ μμλλ‘ μ€ν
λ°λ©΄, κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°μ νμν λμ λΏλ§ μλλΌ μμ μ°κ΄λ λ°μ΄ν°λ‘ κ°μ²΄λ‘ λ¬Άμ΄μ νλμ ν΄λμ€λ‘ λνλ΄λ©°, νλ‘κ·Έλ¨μ κ°μ²΄λ€μ΄ μμλλ‘ μν΅νλ κ³Όμ μΌλ‘ κ°μ£Ό
μ¦, μ μ°¨ μ§ν₯ νλ‘κ·Έλλ°μμλ νλ‘κ·Έλ¨ μμμ μλ‘ κ΄λ ¨λ λμλ€λ§ λ¬Άμ΄μ κ΄λ¦¬νλλ°(ν¨μ)
κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°μμλ κ΄λ ¨λ λμλ€κ³Ό κ΄λ ¨λ λ°μ΄ν°λ ν¨κ» λ¬Άμ΄μ κ΄λ¦¬(ν΄λμ€)
π κ°μ²΄μ νμ
νμ΄μ¬ κ°μ²΄λ κ°λ³ νμ κ³Ό λΆλ³ νμ μΌλ‘ λλ μ μμ
κ°λ³ νμ κ°μ²΄λ νλ² μμ±ν μΈμ€ν΄μ€μ μμ±μ λ³κ²½ν μ μμΌλ ( = κ°μ²΄μ ν λΉλ κ°μ μμ ν μ μμ)
λΆλ³ νμ κ°μ²΄λ νλ² μμ±ν μΈμ€ν΄μ€μ μμ±μ λ³κ²½ν μ μμ ( = κ°μ²΄μ ν λΉλ κ°μ μμ ν μ μμ)
κ°λ³ νμ κ°μ²΄μ μ : 리μ€νΈ ν΄λμ€
λΆλ³ νμ κ°μ²΄μ μ : νν ν΄λμ€
βΌβΌβΌ 리μ€νΈ ν΄λμ€(κ°λ³ νμ ) vs νν ν΄λμ€(λΆλ³ νμ ) λΉκ΅ βΌβΌβΌ
λΆνΈ νμ μ μμ±μ λ°κΏ μ μμ§λ§ κ°μ²΄ μ체λ λ°κΏ μ μμ
λ³μμ μμ μλ‘μ΄ μΈμ€ν΄μ€λ₯Ό μ§μ ν΄ λ³κ²½ν μ μμ
π κ°λ³ νμ κ³Ό λΆλ³ νμ ν΄λμ€ μ’ λ₯
κ°λ³ νμ | λΆλ³ νμ |
list | bool |
dict | int |
float | |
str | |
tuple |
κ·Έλ λ€λ©΄ μ§μ μμ±ν ν΄λμ€λ μ΄λ€ νμ μΌκΉ?
κ°λ³ νμ → λ°λΌμ μ§μ μμ±ν ν΄λμ€μμλ κΈ°μ‘΄μ μΈμ€ν΄μ€λ₯Ό λ³κ²½νκ³ μΆμΌλ©΄ μλ μΈμ€ν΄μ€μ μμ±μ λ°κΎΈλ©΄ λ¨
π μ μ©ν ν¨μλ€
π max, min ν¨μ
max ν¨μλ νλΌλ―Έν° μ€ κ°μ₯ ν° κ°μ, min ν¨μλ νλΌλ―Έν° μ€ κ°μ₯ μμ κ°μ 리ν΄
λ ν¨μ λͺ¨λ μνλ κ°μλ§νΌμ νλΌλ―Έν°λ€μ λκ²¨μ€ μ μμ
π sum ν¨μ
sum ν¨μλ 리μ€νΈ, νν, λμ λ리μ μλ μ«μν μμλ€μ ν©μ 리ν΄
sum ν¨μμ λμ λ리λ₯Ό νλΌλ―Έν°λ‘ λκΈ°λ©΄ keyλ€μ ν©μ 리ν΄
π ternary expression
λΆλ¦°(Boolean) κ°μ λ°λΌ λ€λ₯Έ κ°μ 리ν΄νλ ꡬ문
if, elseλ‘ λ³΅μ‘νκ² ννν΄μΌ νλ ꡬ문μ κ°λ¨νκ² λνλΌ μ μμ
ternary expression λ¬Έλ²
μ°ΈμΌ λ μ€νλ¬Έ if 쑰건μ else κ±°μ§μΌλ κ°
# javaμ μΌνμ°μ°μμλ μ‘°κΈ λ€λ₯Έ ꡬ쑰
쑰건문 ? μ°ΈμΌ λ μ€νλ¬Έ : κ±°μ§μΌ λ μ€νλ¬Έ ← java 3ν μ°μ°μ ꡬ쑰
π list comprehension
μλ‘μ΄ λ¦¬μ€νΈλ₯Ό λ§λλ κ°νΈν λ°©λ²
list comprehension λ¬Έλ²
[μνλ κ°μ 리ν΄νλ μ for λ°λ³΅λ¬Έ]
π zfill λ©μλ
λ¬Έμμ΄μ μ΅μ λͺ μ리 μ΄μμ κ°μ§ λ¬Έμμ΄λ‘ λ³νν΄ μ£Όλ λ©μλλ‘ λͺ¨μλ λΆλΆμ μΌμͺ½μ 0μ μ±μμ€
λ§μ½ μ€μ λ μλ¦Ώμλ³΄λ€ μ΄λ―Έ λ κΈ΄ λ¬Έμμ΄μ΄λΌλ©΄ κ·Έ λ¬Έμμ΄μ κ·Έλλ‘ μΆλ ₯
λ¬Έμμ΄μ μμκ³ ν΅μΌκ° μκ² μΆλ ₯νκ³ μ ν λ μμ£Ό μ¬μ©
zfill λ©μλ λ¬Έλ²
λ¬Έμμ΄.zfill(μλ¦Ώμ)
π λͺ¨λ(module)
λͺ¨λμ΄λ λ³μ, ν¨μ, ν΄λμ€ λ±μ λͺ¨μλμ νμΌλ‘ μ΄λ¬ν λͺ¨λμ λ€λ₯Έ κ³³μμ κ°μ Έλ€ μΈ μ μμ
βΌβΌβΌ calculator.py λͺ¨λ μμ± βΌβΌβΌ
βΌβΌβΌ test.pyλΌλ μλ‘μ΄ νμΌμμ calculator.py λͺ¨λ μ¬μ©νκΈ° βΌβΌβΌ
λͺ¨λ μ¬μ©νλ λ°©λ²
from λͺ¨λμ μ΄λ¦ import λΆλ¬μ¬ λ³μ/ν¨μ/ν΄λμ€ μ΄λ¦
λͺ¨λμ μ¬μ©νλ©΄ μλ‘μ΄ νμΌμμ ν¨μλ₯Ό μ μνμ§ μμλ λͺ¨λμμ μ μλ ν¨μλ λ³μ, ν΄λμ€λ₯Ό λΆλ¬μ μ¬μ©ν μ μμ
π randint ν¨μμ uniform ν¨μ
νμ΄μ¬μλ κΈ°λ³ΈμΌλ‘ λ΄μ₯λ λͺ¨λμ΄ μμ. κ·Έμ€ νλκ° random λͺ¨λ
random λͺ¨λμ ν¬ν¨λ ν¨μλ‘ randintμ uniformμ΄ μμ
randintλ λ μ μ μ¬μ΄μμ λλ€ν μ μλ₯Ό 리ν΄
uniformμ λ μ μ μ¬μ΄μμ λλ€ν μμλ₯Ό 리ν΄
π κ°μ²΄ λ§λ€κΈ° μ°μ΅
π κ²μ μΊλ¦ν° λ§λ€κΈ°
βΌβΌβΌ λ΄κ° μμ±ν μ½λ βΌβΌβΌ
νλ©΄μ μ€λ₯ λ¬λ λΆλΆ
1. λ©μλ λ€μ () λΉ νΈλ¦¬μ§ μκΈ°
2. return μ¬μ© μ£Όμ. ν¨μλ₯Ό μ€ννκ³ μ νλ€λ©΄ returnμ μμ±νμ§ λ§ κ²
λͺ¨λ² λ΅μκ³Ό λΉκ΅
1. is_alive(self) λ©μλ μ μ μ if λ¬Έμ μ¬μ©νμ§ μκ³ return self.hp > 0 μ¬μ©
→ μ΄λ κ² μμ±νλ©΄ λ κ°νΈν¨. if λ¬Έμ΄ μλλλΌλ self.hp κ° 0λ³΄λ€ ν¬λ©΄ μλμΌλ‘ Trueκ° λ¦¬ν΄λ κ±°κ³ ,
κ±°μ§μ΄λΌλ©΄ Falseκ° λ¦¬ν΄λ¨
2. get_attacked λ©μλ μ μ μ ternary expression μ¬μ©
→ ternary expressionμ¬μ© μ else μ΄νμ κ°μ΄ λ€μ΄κ°
→ μ¦, self.hp = 0 μ΄ μλ 0 λ§ μ λ ₯νλ©΄ λ¨
βΌβΌβΌ λͺ¨λ² λ΅μ βΌβΌβΌ
π λΈλ‘κ·Έ μ μ λ§λ€κΈ°
add_post λ©μλ μμ±νκΈ°
dateμ contentλ₯Ό νλΌλ―Έν°λ‘ κ°λ ν΄λμ€λ Post
λ°λΌμ Post ν΄λμ€μ dateμ contentλ₯Ό νλΌλ―Έν°λ‘ κ°λ μλ‘μ΄ μΈμ€ν΄μ€λ₯Ό μμ± (new_post)
κ·Έλ¬κ³ λμ self.postsμ new_postμ κ°μ μΆκ°
show_all_posts λ©μλ μμ±νκΈ°
리μ€νΈ ννμ κ°λ€μ λͺ©λ‘μΌλ‘ μΆλ ₯νκΈ° μν΄μλ for λ°λ³΅λ¬Έ μ¬μ©
Post ν΄λμ€μ μλ‘κ² μμ±ν new_post μΈμ€ν΄μ€λ μΆλ ₯ μ Post ν΄λμ€μμ str λλλ‘ μ€μ ν μμμΌλ‘ μΆλ ₯λ¨
π μκ³ νλ‘κ·Έλ¨
class Counter
μ, λΆ, μ΄κ° 곡ν΅μ μΌλ‘ κ°μ§κ³ μλ νΉμ§λ€ μ¦, κ° κ°μ μ΅λκ°, μκ°μ μ¦κ°, μκ° μ€μ , νμ μμ μ μ
class Clock
Counterμμ μ μν λ©μλμ μμ±ν μΈμ€ν΄μ€λ₯Ό νμ©νμ¬ μ, λΆ, μ΄λ‘ λλμ΄ νμ
βΌβΌβΌ Counter ν΄λμ€ βΌβΌβΌ
μμ± μ μ
β μ΅λκ°μ κ°μΌλ‘ κ°μ§λ μΈμ€ν΄μ€ λ³μμ, μ΄κΈ°κ° λ³μ(κ° = 0) μ€μ (__init__)
: μ΅λκ°μ κ°μΌλ‘ κ°μ§λ μΈμ€ν΄μ€ λ³μ → limit
μ΄κΈ°κ° λ³μ → value
νλ μ μ
β μκ° μ€μ (set) : μλ‘μ΄ κ°μ μ€μ νλ©΄ valueκ°μ μλ‘μ΄ κ°μΌλ‘ λ³κ²½
β‘ 1μ΄μ© μ¦κ° (tick) : λ§μ½ valueκ° limitλ³΄λ€ ν¬λ©΄ valueλ 0μ΄ λκ³ limitλ³΄λ€ μμΌλ©΄ valueμ 1μ© μ¦κ°
β’ 2 μλ¦Ώμλ‘ νκΈ° (__str__) : .zfill(2) μ¬μ©
βΌβΌβΌ Clock ν΄λμ€ βΌβΌβΌ
__init__
Clock ν΄λμ€ μμμ μ μν λ³μ HOURS, MINUTES, SECONDSλ₯Ό Count ν΄λμ€μ limitμ value λ³μλ₯Ό λΆλ¬μ μλ‘μ΄ μΈμ€ν΄μ€ μμ± → Clock ν΄λμ€μμ μμ±λ μΈμ€ν΄μ€λ 24κ° μ΅λκ°μ΄κ³ , 0μ΄ κΈ°λ³Έκ°μΈ hourλΌλ λ³μλ₯Ό κ°μ§ → μ, λΆ, μ΄ λͺ¨λ κΈ°λ³Έκ°μ΄ 0μ΄λ―λ‘ set λ©μλ νμ©νμ¬ μκ° μ€μ
set
set λ©μλλ Counter ν΄λμ€μμ μ μν set λ©μλλ₯Ό νΈμΆνμ¬ νλΌλ―Έν° hourλ₯Ό μλ‘μ΄ κ°μΌλ‘ μ€μ (minute, secondλ λ§μ°¬κ°μ§)
tick
tick λ©μλλ Counter ν΄λμ€μμ μ μν tick λ©μλλ₯Ό νΈμΆ
Counter ν΄λμ€μ tick λ©μλμμ μ΄λ―Έ μ΅λκ°λ³΄λ€ ν΄ κ²½μ° κ°μ΄ 0μΌλ‘ λ°λλλ‘ μμ±
→ Clock ν΄λμ€μ tick λ©μλμμ ν΄μΌ ν μΌμ μ΄κ° μ΅λκ°λ³΄λ€ ν΄ κ²½μ° 1λΆ μ¦κ°, λΆμ΄ μ΅λκ°μ λμΌλ©΄ 1μκ° μΆκ°, μκ°μ΄ μ΅λκ°μ λμΌλ©΄ 0μ΄ λλλ‘ μ€μ ν΄μΌ ν¨ → if μ¬μ©