🦁 멋사 3번째 ν™œλ™

황닀은·2023λ…„ 4μ›” 2일
0
post-thumbnail

μ„Έλ²ˆμ§Έ ν™œλ™μ€ 파이썬의 기초 κ°œλ…μ„ ν•™μŠ΅ν•˜λŠ” μ‹œκ°„μ΄μ˜€λ‹€.
λ¨Όμ € 꽃ꡬ경 κ°”λ‹€μ˜¨ κ³ λͺ…이 사진 보고 νžλ§πŸ˜†πŸ˜ 이것이 λ°”λ‘œ κ½ƒκ°œμƒ·πŸŒΈπŸΆπŸ“·



이번 ν™œλ™μ€ λŒ€ν‘œλ‹˜κ³Ό ν•¨κ»˜ μ‹€μŠ΅κ³Ό μ—°μŠ΅λ¬Έμ œ μœ„μ£Όλ‘œ μ§„ν–‰λ˜μ—ˆλ‹€. -> λŒ€ν‘œλ‹˜μ΄ μˆ˜μ—… μ§„ν–‰ν–ˆλ‹€λŠ” 뜻..
사싀 1,2ν•™λ…„λ•Œ λ¦¬μŠ€νŠΈλž‘ νŠœν”Œ, λ”•μ…”λ„ˆλ¦¬ 뢀뢄을 μ œλŒ€λ‘œ κ³΅λΆ€ν•˜μ§€μ•Šμ•„μ„œ ν—·κ°ˆλ ΈλŠ”λ° λ‹€μ‹œ 정리할 수 μžˆλŠ” 쒋은 κΈ°νšŒκ°€ λ˜μ—ˆλ‹€....!

1. λ³€μˆ˜μ™€ μžλ£Œν˜•

λ³€μˆ˜λŠ” 값을 μ €μž₯ν•˜λŠ” 곡간이라고 μƒκ°ν•˜λ©΄ λœλ‹€.
κΈ°λ³Έ μžλ£Œν˜•μ€ λ¬Έμžμ—΄κ³Ό μ •μˆ˜ν˜•, μ‹€μˆ˜ν˜•μ΄ 있으며 μ—°μŠ΅μ½”λ“œλŠ” μ•„λž˜μ™€ κ°™λ‹€.

str1 = 'ν™©κ³ λͺ… '
str2 = 'κ·€μ—¬μ›Œ'
str3 = 1
str4 = 9
print(str1 + str2)
print(str3 + str4)

πŸ’‘κ²°κ³Ό
ν™©κ³ λͺ… κ·€μ—¬μ›Œ
10


2. μ‚°μˆ  μ—°μ‚°μž

ν”νžˆ μš°λ¦¬κ°€ μ•Œκ³ μžˆλŠ” 사칙연산에 λͺ‡κ°€μ§€κ°€ 더 μžˆλ‹€.

+ : λ§μ…ˆ
- : λΊ„μ…ˆ
* : κ³±μ…ˆ
/ : λ‚˜λˆ—μ…ˆ
// : λ‚˜λˆ—μ…ˆ (λͺ«)
% : λ‚˜λˆ—μ…ˆ (λ‚˜λ¨Έμ§€)
** : μ§€μˆ˜μ—°μ‚°

μœ„μ™€ 같이 7κ°€μ§€μ˜ μ—°μ‚°μžκ°€ 있으며 이λ₯Ό μ‘μš©ν•΄ κ°„λ‹¨ν•œ ν•™μ μ˜ 평균을 κ΅¬ν•˜λŠ” 예제λ₯Ό λ§Œλ“€μ—ˆλ‹€. (μ‹€μ œ λ‚΄ 학점........을 κ³„μ‚°ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ λ§Œλ“€μ–΄λ³΄μž...😭)
아직 3ν•™λ…„ 성적은 μ•ˆλ‚˜μ™”μœΌλ‹ˆκΉŒ 2ν•™λ…„ 성적과 ν˜„μž₯μ‹€μŠ΅ μ„±μ λ§Œ 넣어보겠닀...

first_one = float(input("1ν•™λ…„ 1ν•™κΈ° 성적 : "))
first_two = float(input("1ν•™λ…„ 2ν•™κΈ° 성적 : "))
second_one = float(input("2ν•™λ…„ 1ν•™κΈ° 성적 : "))
second_two = float(input("2ν•™λ…„ 2ν•™κΈ° 성적 : "))
placement = float(input("ν˜„μž₯μ‹€μŠ΅ 성적 : "))

grade = first_one + first_two + second_one + second_two + placement
avg = grade / 5

print("황닀은 ν•™μƒμ˜ μ§€κΈˆκΉŒμ§€μ˜ 학점은 : %.2f μž…λ‹ˆλ‹€." % avg)

πŸ’‘ κ²°κ³Ό
1ν•™λ…„ 1ν•™κΈ° 성적 : 3.6
1ν•™λ…„ 2ν•™κΈ° 성적 : 3.34
2ν•™λ…„ 1ν•™κΈ° 성적 : 4
2ν•™λ…„ 2ν•™κΈ° 성적 : 4.13
ν˜„μž₯μ‹€μŠ΅ 성적 : 4.5
황닀은 ν•™μƒμ˜ μ§€κΈˆκΉŒμ§€μ˜ 학점은 3.91μž…λ‹ˆλ‹€.

β‘  input() ν•¨μˆ˜λ‘œ μ‚¬μš©μžλ‘œλΆ€ν„° 값을 μž…λ ₯λ°›κ³  float()을 μ΄μš©ν•΄ μ‹€μˆ˜ν˜•μœΌλ‘œ λ°”κΏ”μ£Όμ—ˆλ‹€.
β‘‘ μ‹€μˆ˜ν˜•μœΌλ‘œ 바뀐 이 값을 각 λ³€μˆ˜μ— μ €μž₯ν•œλ‹€.
β‘’ grade λ³€μˆ˜μ— 각 ν•™κΈ° μ μˆ˜κ°€ μ €μž₯λ˜μ–΄μžˆλŠ” λ³€μˆ˜λ₯Ό μ‚¬μš©ν•΄ 총합을 μ €μž₯ν•œλ‹€.
β‘£ avg λ³€μˆ˜μ— 총합을 5둜 λ‚˜λˆ„μ–΄(총 갯수) 평균을 κ΅¬ν•΄μ£Όμ—ˆλ‹€.
β‘€ print()ν•¨μˆ˜μ™€ %λ₯Ό μ΄μš©ν•œ μ†ŒμŠ€μ½”λ“œλ₯Ό μ΄μš©ν•΄ μ§€κΈˆκΉŒμ§€μ˜ 학점을 κ³„μ‚°ν•œλ‹€.

%.2fλŠ” .을 κΈ°μ€€μœΌλ‘œ 2μžλ¦¬κΉŒμ§€ λ‚˜νƒ€λ‚΄λΌλŠ” λœ»μ΄λ‹€.

2-1. 비ꡐ μ—°μ‚°μž

λΉ„κ΅μ—°μ‚°μžμ˜ μ’…λ₯˜λŠ” μ•„λž˜μ™€ κ°™λ‹€.

a < b	크닀
a > b	μž‘λ‹€
a == b	κ°™λ‹€
a <= b	μ΄ν•˜ (μž‘κ±°λ‚˜ κ°™λ‹€)
a >= b	이상 (ν¬κ±°λ‚˜ κ°™λ‹€)
a != b	λ‹€λ₯΄λ‹€

3. list[리슀트]

μˆœμ„œκ°€ μžˆλŠ” μˆ˜μ • κ°€λŠ₯ν•œ 객체의 μ§‘ν•©μœΌλ‘œ 좔가와 μ‚­μ œλ„ κ°€λŠ₯ν•˜λ‹€.
리슀트 μ•ˆμ— 리슀트λ₯Ό λ„£λŠ” μ΄μ€‘λ¦¬μŠ€νŠΈ κ°€λŠ₯

list1 = [1, 2, 3, 4, 5]
print(list1[2]) 인덱싱
print(list1[:3]) μŠ¬λΌμ΄μ‹±

πŸ’‘ κ²°κ³Ό
3
[1, 2, 3]

  • 맨뒀에 κ°’ μΆ”κ°€ -> list1.append(6)
  • μΈλ±μŠ€μ— κ°’ μΆ”κ°€ -> list1.insert(0, 0)
  • μ˜€λ¦„μ°¨μˆœ μ •λ ¬ -> list1.sort()
  • μ—­μˆœμœΌλ‘œ μ •λ ¬ -> list1.reverse()
  • 인덱슀 κ°’ μ‚­μ œ -> del list1[6]
  • 리슀트 κ°’μ˜ 개수 -> len(list1)

4. tuple(νŠœν”Œ)

μˆœμ„œκ°€ μžˆλŠ” μ§‘ν•©μœΌλ‘œ μΆ”κ°€, μˆ˜μ •, μ‚­μ œκ°€ λΆˆκ°€λŠ₯ν•˜λ‹€.
λΆˆλ³€μ μ΄λ©° μš”μ†Œ 개수λ₯Ό 사전에 μ •ν™•νžˆ μ•Œκ³ μžˆμ„ λ•Œ μ‚¬μš©ν•œλ‹€.

tuple1 = (1, 2, 3, (4, 5), 6)
print(tuple1[2])
print(tuple1[:3])

πŸ’‘ κ²°κ³Ό
3
(1, 2, 3, (4, 5))

5. dictionary(λ”•μ…”λ„ˆλ¦¬)

key와 valueλ₯Ό ν•œμŒμœΌλ‘œ κ°–λŠ” μžλ£Œν˜•μœΌλ‘œ λΆˆλ³€ν•˜λŠ” key와 κ°€λ³€ν•˜λŠ” value둜 λ§΅ν•‘λ˜μ–΄ μžˆλŠ” μˆœμ„œκ°€ μ—†λŠ” 집합이닀.

key : λ³€ν•˜μ§€ μ•ŠλŠ” κ°’ μ‚¬μš©
value : λ³€ν•˜λŠ” κ°’, λ³€ν•˜μ§€ μ•ŠλŠ” κ°’ λͺ¨λ‘ μ‚¬μš©

예제둜 κ³ λͺ…이에 λŒ€ν•œ λ”•μ…”λ„ˆλ¦¬λ₯Ό λ§Œλ“€μ–΄λ³΄κ² λ‹€. πŸΆν™©κ³ λͺ… TMI λŒ€λ°©μΆœπŸ™ˆ

dic_topping = {name : 'κ³ λͺ…', gender : '남', age : 3}
print(dic_topping)

dic_topping["kind"] = "λΉ„μˆ‘ ν”„λ¦¬μ œ"
dic_topping["weight"] = "6.3kg"
dic_topping["birth"] = "2020-06-30"
print(dic_topping)

πŸ’‘ κ²°κ³Ό
{'name' : 'κ³ λͺ…', 'gender' : '남', 'age' : 3}
{'name' : 'κ³ λͺ…', 'gender' : '남', 'age' : 3, 'kind' : 'λΉ„μˆ‘ ν”„λ¦¬μ œ', 'weight' : '6.3kg', 'birth' : '2020-06-30'}

벌써 3μ‚΄μ΄λΌλ‹ˆ......... 많이 μ»Έλ‹€..
그리고... μ‚΄λΉΌμž κ³ λͺ…μ•„.......... λ„ˆλ¬΄ 무겁닀..

  • inκ³Ό not in

print("birth" in dic_topping) => True
print("family" in dic_topping) => False

6. 쑰건문

μ£Ό ν‚€μ›Œλ“œλŠ” if elif else 3가지가 μžˆλ‹€. 쑰건문은 λ“€μ—¬μ“°κΈ°κ°€ 맀우 μ€‘μš”ν•˜λ‹€.

κ°„λ‹¨ν•œ 예제λ₯Ό 톡해 쑰건문을 μ΄ν•΄ν•΄λ³΄μž.

λ¨Όμ € 정말 κ°„λ‹¨ν•˜κ²Œ κ³ λͺ…μ΄μ˜ λ‚˜μ΄κ°€ 3살이 λ§žλŠ”μ§€ νŒλ‹¨ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ λ§Œλ“€μ—ˆλ‹€.

topping_age = 3

input_age = int(input("λ‚˜μ΄λ₯Ό λ§žμΆ°λ³΄μ„Έμš” : "))

if topping_age == input_age :
	print("μ •λ‹΅μž…λ‹ˆλ‹€!")
else :
	print("ν‹€λ ΈμŠ΅λ‹ˆλ‹€!")
    

input_ageκ°€ topping_age와 같이 3을 μž…λ ₯λ°›μ•˜μ„ 경우 "μ •λ‹΅μž…λ‹ˆλ‹€!"λ₯Ό 좜λ ₯ν•œλ‹€.
λ§Œμ•½ 3이 μ•„λ‹Œ λ‹€λ₯Έ 숫자λ₯Ό μž…λ ₯λ°›λŠ” 경우 else문으둜 λ„˜μ–΄κ°€ "ν‹€λ ΈμŠ΅λ‹ˆλ‹€!"λ₯Ό 좜λ ₯ν•œλ‹€.


elif문은 elseλ¬Έκ³Ό if문이 합쳐진 κ²ƒμœΌλ‘œ if 쑰건식이 참이 아닐 경우 λ‹€λ₯Έ 쑰건을 μΆ”κ°€ν•  λ•Œ μ‚¬μš©ν•œλ‹€.
이것도 직접 예제λ₯Ό λ§Œλ“€μ–΄μ„œ μ—°μŠ΅ν•΄λ³΄λ„λ‘ ν•˜κ² λ‹€.

κ³ λͺ…μ΄μ˜ λ‚˜μ΄λ₯Ό λ§žμΆ”λŠ” ν€΄μ¦ˆλ₯Ό λ§Œλ“€μ—ˆλ‹€. μ—°μ‚°μžλ₯Ό 톡해 νžŒνŠΈλ„ 얻을 수 μžˆλ„λ‘ ν•΄λ³΄μ•˜λ‹€.

topping_age = 3

input_age = int(input("λ‚˜μ΄λ₯Ό λ§žμΆ°λ³΄μ„Έμš” : "))

if topping_age == input_age :
	print("μ •λ‹΅μž…λ‹ˆλ‹€!")
elif input_age < topping_age :
	print("κ³ λͺ…μ΄λŠ” %dμ‚΄ 보닀 λ‚˜μ΄κ°€ λ§ŽμŠ΅λ‹ˆλ‹€." % input_age)
else :
	print("κ³ λͺ…μ΄λŠ” %dμ‚΄ 보닀 λ‚˜μ΄κ°€ μ–΄λ¦½λ‹ˆλ‹€." % input_age)

if문을 톡해 input_age와 topping_ageκ°€ κ°™μœΌλ©΄ "μ •λ‹΅μž…λ‹ˆλ‹€!"λ₯Ό 좜λ ₯ν•˜κ²Œ λœλ‹€.
λ§Œμ•½ 두 값이 κ°™μ§€μ•Šκ³  input_ageκ°€ topping_age보닀 μž‘μœΌλ©΄ μœ μΆ”ν•  수 μžˆλŠ” 힌트λ₯Ό 좜λ ₯ν•˜κΈ°μœ„ν•΄ elif문을 μ‚¬μš©ν•΄ 좔가적인 쑰건을 λΉ„κ΅μ—°μ‚°μžλ‘œ 확인할 수 있게 ν•΄μ£Όμ—ˆλ‹€.
input_ageκ°€ topping_age보닀 큰 κ²½μš°λŠ” 두 쑰건을 λ‹€ λ§Œμ‘±ν•˜μ§€μ•ŠμœΌλ―€λ‘œ else문을 μ‚¬μš©ν•΄ 힌트λ₯Ό 좜λ ₯ν•œλ‹€.



이번 3μ£Όμ°¨ ν™œλ™μ€ μ—¬κΈ°κΉŒμ§€ ν•™μŠ΅ν–ˆμœΌλ©° λ‹€μŒ 4μ£Όμ°¨ ν™œλ™ λ•Œ μ΄μ–΄μ„œ λ°˜λ³΅λ¬Έμ„ 배울 μ˜ˆμ •μ΄λ‹€. νŒŒμ΄μ¬μ„ κΈ°μ΄ˆλΆ€ν„° λ‹€μ‹œ λ°°μš°λ‹ˆ λ³΅μŠ΅μ„ 닀같이 ν•  수 μžˆμ–΄μ„œ μ’‹κ³  더 μ§‘μ€‘ν•˜κ²Œ λ˜λŠ” 것 κ°™λ‹€. μ—΄μ‹¬νžˆ 해야지...❗

0개의 λŒ“κΈ€