1๋ฒ
- ์ฌ์ฉ์์ ์ํ ์ ์๋ฅผ ์
๋ ฅ๋ฐ์ ๋ฑ๊ธ์ ์ถ๋ ฅํ๋ ์ฝ๋๋ฅผ ๋ง๋ค์ด์ฃผ์ธ์
- ๋ฑ๊ธํ
- 91~100 : A
- 81~90 : B
- 71~80 : C
- ~71 : F
- ๋ฑ๊ธํ
- ์ ์ถ๋ ฅ ์์
def get_grade(score):
# some code
score = int(input())
grade = get_grade(score)
print(grade) # A ~ F
์ด๊ฑด ์ง์ง ์ฝ๊ฒ ๋๋ค!
def get_grade(score):
if score >= 91:
return "A"
elif score >= 81:
return "B"
elif score >= 71:
return "C"
else:
return "F"
while True:
try:
score = int(input())
break
except ValueError:
print("์ซ์๋ฅผ ์
๋ ฅํ์ธ์")
grade = get_grade(score)
print(grade)
2๋ฒ
- ์ฌ์ฉ์์ ์ ๋ ฅ์ ๋ฐ์ ๋ฐ๋ณตํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด์ฃผ์ธ์
- ์ฌ์ฉ์๊ฐ ์ซ์๋ฅผ ์ ๋ ฅํ์ ๊ฒฝ์ฐ ์ ๋ ฅ๊ฐ์ 2๋ฐฐ๋ฅผ ๊ณฑํ ์๋ฅผ ์ถ๋ ฅํด์ฃผ์ธ์
- ์ฌ์ฉ์๊ฐ ๋ฌธ์๋ฅผ ์
๋ ฅํ์ ๊ฒฝ์ฐ “์
๋ ฅํ ๋ฌธ์๋ {} ์
๋๋ค.” ๋ผ๋ ๋ฌธ๊ตฌ๋ฅผ ์ถ๋ ฅํด์ฃผ์ธ์
- {} ์๋ฆฌ์๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋ฌธ์๊ฐ ๋ค์ด๊ฐ์ผ ํฉ๋๋ค.
- ์ฌ์ฉ์๊ฐ exit์ ์ ๋ ฅํ๊ฑฐ๋ ์ซ์๊ฐ 5ํ ์ด์ ์ ๋ ฅ๋์ ๊ฒฝ์ฐ ํ๋ก๊ทธ๋จ์ ์ข ๋ฃ์์ผ์ฃผ์ธ์
์ ์ด๊ฒ๋ ๋๊ฒ ์ฌ์ธ ์ค ์์๋ค.
๋จธ๋ฆฟ์์ ์ด๋ป๊ฒ ์ง๋ฉด ๋๋์ง ๊ทธ๋ ค์ก๊ธฐ ๋๋ฌธ์ ๊ทธ๋๋ก ๋ฐ๋ก ์ง๋ฉด ๋ ์ค ์์๋๋ฐ
์๊พธ ์ค๋ฅ๊ฐ๋์ ๋ฏธ์น๋ ์ค ์์๋ค...
์ผ๋จ ๋๋ main()ํจ์๋ฅผ ์คฌ๋ค.
์ฒ์์ input_value๋ฅผ input()๊ฐ์ ์ฃผ๊ณ try/except ๊ตฌ๋ฌธ์ ์ฌ์ฉํด์
๋ฌธ์๋ฅผ ์ ๋ ฅํ๋ฉด ๋ฌธ๊ตฌ ์ถ๋ ฅํ๊ณ , ์ซ์๋ฅผ ์ ๋ ฅํ๋ฉด ์๋ฌ๊ฐ ๋์ except๊ตฌ๋ฌธ์ผ๋ก ๋ณด๋ด๋ ค๊ณ ํ๋๋ฐ
๋ฌธ์ ๋ ์ซ์๋ฅผ ์ ๋ ฅํ๋ค๊ณ ์๋ฌ๊ฐ ๋์ง ์์๋ค..
๊ทธ๋ ๋น์ฐํ ๊ฒ์ด input()๊ฐ์ ์ซ์๋ฅผ ๋ฃ๋๋ค๊ณ ๋น์ฐํ ์๋ฌ๊ฐ ์๋์ง... ๋ฌธ์ํ์ ์ ์ซ์๊ฐ ๋ค์ด๊ฐ ๋ฟ...
๊ทธ๋์ try/except๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ์ค๋ฅ๊ฐ ๋์ผํ๋๋ฐ
try ๊ตฌ๋ฌธ์ ๋ฌธ์ ๋ฌธ๊ตฌ๋ฅผ ์ถ๋ ฅํ๊ฒ ํ๋ฉด ์ค๋ฅ๊ฐ ์๋๊ณ ์ซ์๋ฅผ ์ ๋ ฅํด๋ ๋ฌธ์๋ก ์ฐํ๊ฒ์ด๊ธฐ ๋๋ฌธ์
try ๊ตฌ๋ฌธ์ int๋ก ๋ฐ๊พธ๊ฒ ํด์ ์ค๋ฅ๊ฐ ๋๋ฉด except ๋ฌธ์ผ๋ก ๋ณด๋ด๊ฒ ํ๋ค.
def main():
input_value = input()
try:
input_value = int(input_value)
print(2*input_value)
except ValueError:
print(f'์
๋ ฅํ ๋ฌธ์๋ {input_value}์
๋๋ค')
main()
๊ทธ๋ฌ๋๋ ์์ฃผ ์ ๋๋ค.
์ด์ ์ด๊ฑธ ๋ฐ๋ณตํด์ผํ๋๊น while ๋ฌธ์ ์์์ค์ผ๋๋ค(๋ฐ๋ณตํ์๊ฐ ์์ ํด์ ธ์์ผ๋๊น for ์๋๊ณ while!)
๊ทธ๋ฆฌ๊ณ exit๋ฅผ ์ ๋ ฅํ๊ฑฐ๋ 5๋ฒ ์ด์ ์ ๋ ฅ๋์๊ฒฝ์ฐ ์ข ๋ฃ์์ผ์ค์ผ๋๋ค.
def main():
count = 0
while True:
input_value = input()
if input_value == "exit" or count >= 5:
return False
else:
try:
input_value = int(input_value)
print(2*input_value)
count += 1
except ValueError:
print(f'์
๋ ฅํ ๋ฌธ์๋ {input_value}์
๋๋ค')
count += 1
main()
๊ทผ๋ฐ ์ด๋ ๊ฒ ์ง๋๊น
5๋ฒ์งธ ์ ๋ ฅํ๊ณ ๊ฒฐ๊ณผ์ฐํ๊ณ ์ข ๋ฃ๋๋๊ฒ ์๋๊ณ
6๋ฒ์งธ input_value๊ฐ์ ์ ๋ ฅ๋ฐ๊ณ ๊ฒฐ๊ณผ๋์ค์ง์์์ฑ๋ก ์ข ๋ฃ๊ฐ ๋๋ค.
์๋ํ๋ฉด input()๊ฐ์ ๋ฐ๊ณ count๊ฐ 5๋ณด๋ค ํฐ์ง ๋น๊ต๋ฅผ ํ๊ธฐ ๋๋ฌธ์ด๋ค!
์ผ๋จ 6๋ฒ์งธ ๊ฐ์ ๋ฐ๊ณ count๊ฐ 5๋ณด๋ค ํฌ๊ตฌ๋! ํ๊ณ ๋๋ฌ๊ธฐ ๋๋ฌธ์ด๋ค
๊ทธ๋ฌ๋๊น ์ count๋ฅผ ๋ฐ๋ก ์๋ก ์ฌ๋ ค์ฃผ์
def main():
count = 0
while True:
if count >= 5:
return False
input_value = input()
if input_value == "exit" or count >= 5:
return False
else:
try:
input_value = int(input_value)
print(2*input_value)
count += 1
except ValueError:
print(f'์
๋ ฅํ ๋ฌธ์๋ {input_value}์
๋๋ค')
count += 1
main()
์ ๋๋ฌด ๊น๋ํด์ ์ข๋ค...........
3๋ฒ
- ์ ์ถ๋ ฅ ์์ ์ ์๋ ์ฌ๋๋ค ์ค, ํ๊ท ์ฑ์ ์ด 70์ ์ด์์ธ ์ฌ์ฉ์์ ์ด๋ฆ๊ณผ ๋์ด๋ฅผ ์ถ๋ ฅํด์ฃผ์ธ์
- ์ ์ถ๋ ฅ ์์
users = [
{"name": "Ronald", "age": 30, "math_score": 93, "science_score": 65, "english_score": 93, "social_score": 92},
{"name": "Amelia", "age": 24, "math_score": 88, "science_score": 52, "english_score": 78, "social_score": 91},
{"name": "Nathaniel", "age": 28, "math_score": 48, "science_score": 40, "english_score": 49, "social_score": 91},
{"name": "Sally", "age": 29, "math_score": 100, "science_score": 69, "english_score": 67, "social_score": 82},
{"name": "Alexander", "age": 30, "math_score": 69, "science_score": 52, "english_score": 98, "social_score": 44},
{"name": "Madge", "age": 22, "math_score": 52, "science_score": 63, "english_score": 54, "social_score": 47},
{"name": "Trevor", "age": 23, "math_score": 89, "science_score": 88, "english_score": 69, "social_score": 93},
{"name": "Andre", "age": 23, "math_score": 50, "science_score": 56, "english_score": 99, "social_score": 54},
{"name": "Rodney", "age": 16, "math_score": 66, "science_score": 55, "english_score": 58, "social_score": 43},
{"name": "Raymond", "age": 26, "math_score": 49, "science_score": 55, "english_score": 95, "social_score": 82},
{"name": "Scott", "age": 15, "math_score": 85, "science_score": 92, "english_score": 56, "social_score": 85},
{"name": "Jeanette", "age": 28, "math_score": 48, "science_score": 65, "english_score": 77, "social_score": 94},
{"name": "Sallie", "age": 25, "math_score": 42, "science_score": 72, "english_score": 95, "social_score": 44},
{"name": "Richard", "age": 21, "math_score": 71, "science_score": 95, "english_score": 61, "social_score": 59},
{"name": "Callie", "age": 15, "math_score": 98, "science_score": 50, "english_score": 100, "social_score": 74},
]
def get_filter_user(users):
# some code
return filter_users
filter_users = get_filter_user(users)
pprint(filter_users)
"""
[{'age': 30, 'name': 'Ronald'},
{'age': 24, 'name': 'Amelia'},
{'age': 29, 'name': 'Sally'},
{'age': 23, 'name': 'Trevor'},
{'age': 26, 'name': 'Raymond'},
{'age': 15, 'name': 'Scott'},
{'age': 28, 'name': 'Jeanette'},
{'age': 21, 'name': 'Richard'},
{'age': 15, 'name': 'Callie'}]
"""
์ด๋ ๊ฒ ์ ๋ ฅ์ํด์ ๋๋ ธ๋๋
TypeError: list indices must be integers or slices, not str
์ด๋ฐ ์๋ฌ๊ฐ ๋ด๋ค
for ๋ฌธ์ ์ฐ์๋๋ ๋ฌธ์์ด์ด ์๋ ์ ์๋ก ๋ฃ์ด์ค์ผ ๋๋ค๋ ๊ฒ...
from pprint import pprint
users = [
{"name": "Ronald", "age": 30, "math_score": 93, "science_score": 65, "english_score": 93, "social_score": 92},
{"name": "Amelia", "age": 24, "math_score": 88, "science_score": 52, "english_score": 78, "social_score": 91},
{"name": "Nathaniel", "age": 28, "math_score": 48, "science_score": 40, "english_score": 49, "social_score": 91},
{"name": "Sally", "age": 29, "math_score": 100, "science_score": 69, "english_score": 67, "social_score": 82},
{"name": "Alexander", "age": 30, "math_score": 69, "science_score": 52, "english_score": 98, "social_score": 44},
{"name": "Madge", "age": 22, "math_score": 52, "science_score": 63, "english_score": 54, "social_score": 47},
{"name": "Trevor", "age": 23, "math_score": 89, "science_score": 88, "english_score": 69, "social_score": 93},
{"name": "Andre", "age": 23, "math_score": 50, "science_score": 56, "english_score": 99, "social_score": 54},
{"name": "Rodney", "age": 16, "math_score": 66, "science_score": 55, "english_score": 58, "social_score": 43},
{"name": "Raymond", "age": 26, "math_score": 49, "science_score": 55, "english_score": 95, "social_score": 82},
{"name": "Scott", "age": 15, "math_score": 85, "science_score": 92, "english_score": 56, "social_score": 85},
{"name": "Jeanette", "age": 28, "math_score": 48, "science_score": 65, "english_score": 77, "social_score": 94},
{"name": "Sallie", "age": 25, "math_score": 42, "science_score": 72, "english_score": 95, "social_score": 44},
{"name": "Richard", "age": 21, "math_score": 71, "science_score": 95, "english_score": 61, "social_score": 59},
{"name": "Callie", "age": 15, "math_score": 98, "science_score": 50, "english_score": 100, "social_score": 74},
]
# ์
์ถ๋ ฅ ์์ ์ ์๋ ์ฌ๋๋ค ์ค, ํ๊ท ์ฑ์ ์ด 70์ ์ด์์ธ ์ฌ์ฉ์์ ์ด๋ฆ๊ณผ ๋์ด๋ฅผ ์ถ๋ ฅํด์ฃผ์ธ์
def get_filter_user(users):
filter_users = []
for i in users:
avg = (users[i]["math_score"]+users[i]["science_score"]+users[i]["english_score"]+users[i]["social_score"])/4
if avg >= 70:
filter_users.append(users[i]["name"])
return filter_users
filter_users = get_filter_user(users)
pprint(filter_users)
๊ทธ๋ฌ๋ฉด ์ด๋ป๊ฒ ๋ฌธ์์ด๋ก ๋ฐ๊ฟ์ฃผ๋....
์๋ฌ์ผ!!
ํ์คํ ๋๋ ๋์ ๋๋ฆฌ๊ฐ ์ฝํ๋ค
์ด๋ฒ์ฃผ ํ์ด์ฌ ๋ณต์ตํ ๋ ๋์ ๋๋ฆฌ๋ฅผ ๋ ์์ธํ ๊ณต๋ถํด์ผ๊ฒ ๋ค!
from pprint import pprint
users = [
{"name": "Ronald", "age": 30, "math_score": 93, "science_score": 65, "english_score": 93, "social_score": 92},
{"name": "Amelia", "age": 24, "math_score": 88, "science_score": 52, "english_score": 78, "social_score": 91},
{"name": "Nathaniel", "age": 28, "math_score": 48, "science_score": 40, "english_score": 49, "social_score": 91},
{"name": "Sally", "age": 29, "math_score": 100, "science_score": 69, "english_score": 67, "social_score": 82},
{"name": "Alexander", "age": 30, "math_score": 69, "science_score": 52, "english_score": 98, "social_score": 44},
{"name": "Madge", "age": 22, "math_score": 52, "science_score": 63, "english_score": 54, "social_score": 47},
{"name": "Trevor", "age": 23, "math_score": 89, "science_score": 88, "english_score": 69, "social_score": 93},
{"name": "Andre", "age": 23, "math_score": 50, "science_score": 56, "english_score": 99, "social_score": 54},
{"name": "Rodney", "age": 16, "math_score": 66, "science_score": 55, "english_score": 58, "social_score": 43},
{"name": "Raymond", "age": 26, "math_score": 49, "science_score": 55, "english_score": 95, "social_score": 82},
{"name": "Scott", "age": 15, "math_score": 85, "science_score": 92, "english_score": 56, "social_score": 85},
{"name": "Jeanette", "age": 28, "math_score": 48, "science_score": 65, "english_score": 77, "social_score": 94},
{"name": "Sallie", "age": 25, "math_score": 42, "science_score": 72, "english_score": 95, "social_score": 44},
{"name": "Richard", "age": 21, "math_score": 71, "science_score": 95, "english_score": 61, "social_score": 59},
{"name": "Callie", "age": 15, "math_score": 98, "science_score": 50, "english_score": 100, "social_score": 74},
]
# ์
์ถ๋ ฅ ์์ ์ ์๋ ์ฌ๋๋ค ์ค, ํ๊ท ์ฑ์ ์ด 70์ ์ด์์ธ ์ฌ์ฉ์์ ์ด๋ฆ๊ณผ ๋์ด๋ฅผ ์ถ๋ ฅํด์ฃผ์ธ์
def get_filter_user(users):
filter_users = []
for i in range(len(users)):
a = list(users[i].values())[2:6] # ๊ณผ๋ชฉ๋ค ๊ฐ ๊ฐ์ ธ์ค๊ธฐ
avg = sum(a)/4
if avg >= 70:
filter_name = users[i]['name']
filter_age = users[i]['age']
filter_users.append({'name':filter_name,'age':filter_age})
return filter_users
users_list = get_filter_user(users)
pprint(users_list)
# avg = (users[i]["math_score"]+users[i]["science_score"]+users[i]["english_score"]+users[i]["social_score"])/4
# if avg >= 70:
# filter_users.append(users[i]["name"])
# return filter_users
#
# filter_users = get_filter_user(users)
# pprint(filter_users)
"""
[{'age': 30, 'name': 'Ronald'},
{'age': 24, 'name': 'Amelia'},
{'age': 29, 'name': 'Sally'},
{'age': 23, 'name': 'Trevor'},
{'age': 26, 'name': 'Raymond'},
{'age': 15, 'name': 'Scott'},
{'age': 28, 'name': 'Jeanette'},
{'age': 21, 'name': 'Richard'},
{'age': 15, 'name': 'Callie'}]
"""
'๐๐ช > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Module (1) | 2022.09.19 |
---|---|
Class Inheritance (1) | 2022.09.19 |
Python ํน๊ฐ (6) (option, args/kwargs, packing/unpacking) (0) | 2022.09.15 |
๊ณ์ฐ๊ธฐ ๋ง๋ค๊ธฐ(2), filter,sort๊ณผ์ (1) | 2022.09.14 |
Python ํน๊ฐ(5) (try-except, stacktrace, comprehension) (1) | 2022.09.14 |
๋๊ธ