ºÝºÝߣ
Search
Submit Search
Python if loop-function
•
0 likes
•
350 views
ê±´
ê±´í¬ ê¹€
땅울림 파ì´ì¬ 스터디 ìžë£Œ
Read less
Read more
1 of 30
Download now
Download to read offline
More Related Content
Python if loop-function
1.
Study Of Landvibe Python If,
Loop, Function
2.
Outline 1. If 2. Loop 3.
range() 4. break, continue, pass 5. Comprehensions 6. Function
3.
ì¡°ê±´ë¬¸ì˜ ë 블ë¡ë¬¸ì˜ 시작 조건문 If 1.
if ~ elif ~ else color = input(“색ìƒì„ ì˜ë¬¸ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš” : “) if color == ‘blue’: print(â€œíŒŒëž€ìƒ‰ì„ ìž…ë ¥í•˜ì…¨ë„¤ìš”â€) elif color ==‘red’: print(â€œë¹¨ê°„ìƒ‰ì„ ìž…ë ¥í•˜ì…¨ë„¤ìš”â€) else : print(color + â€œìƒ‰ì„ ìž…ë ¥í•˜ì…¨ë„¤ìš”â€) íŠ¹ì • ì¡°ê±´ì— ë”°ë¼ ë¶„ê¸°ë¥¼ 하기 위해 ì œê³µë˜ëŠ” ì œì–´ë¬¸ else if => elif ( else if는 syntax error!) 파ì´ì¬ì—는 Swich-caseë¬¸ì´ ì—†ìŠµë‹ˆë‹¤ ì œì–´ë¬¸ 키워드 들여쓰기로 블ë¡ë¬¸ 대체
4.
들여쓰기로 블ë¡ë¬¸ 대체 조건문 Loop 1.
While color =‘’ while color != ‘blue’ and color != ‘red’ : color = input(“색ìƒì„ ì˜ë¬¸ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš” : “) if color == ‘blue’: print(â€œíŒŒëž€ìƒ‰ì„ ìž…ë ¥í•˜ì…¨ë„¤ìš”â€) elif color ==‘red’: print(â€œë¹¨ê°„ìƒ‰ì„ ìž…ë ¥í•˜ì…¨ë„¤ìš”â€) else : print(color + â€œìƒ‰ì„ ìž…ë ¥í•˜ì…¨ë„¤ìš”â€) print (â€œí”„ë¡œê·¸ëž¨ì„ ì¢…ë£Œ 합니다â€) íŠ¹ì • ì¡°ê±´ì— ë§Œì¡±í• ë•Œê¹Œì§€ 루프를 ëŒë¦´ë•Œ 주로 사용 무한 루프를 ëŒë¦´ ë•Œ 주로 사용 ì¡°ê±´ë¬¸ì˜ ë 블ë¡ë¬¸ì˜ 시작 반복문 키워드
5.
열거형 변수가 하나씩
ëŒ€ìž…ë˜ ëŠ” 변수 반복문 키워드 Loop 2. for landvibe = ‘재승’, ‘민승’, ì§€ì„ â€™ for member in landvibe: print(member) íŠ¹ì • ë²”ìœ„ë§Œí¼ ë£¨í”„ë¥¼ ëŒë¦´ë•Œ 주로 사용 열거형 변수 (tuple, list, …)
6.
for문과 range() 함수 1.
range() >>> for x in range(5) : … print(x, end=‘ ‘) 0 1 2 3 4 # 5는 ì¶œë ¥ë˜ì§€ 않습니다 >>> type(range(5)) <class ‘range’> >>> range(5) range(0, 5) # 그냥 ì“°ë©´ range 타입입니다 >>> list(range(5)) [0, 1 ,2, 3 ,4 ] # list() ë¡œ í˜•ë³€í™˜ì„ í•´ì£¼ë©´ 해당 범위ì˜ëª¨ë“ ê°’ì´ # ì¶œë ¥ë©ë‹ˆë‹¤ 순차ì ì¸ ìˆ«ìžë¡œ ì´ë£¨ì–´ì§„ 리스트를 쉽게 만드는 방법 파ì´ì¬ 기본 내장 함수 range(start, stop [, step]) 기본 ì˜ˆì œ
7.
>>> list(range(5, 10)) >>>
list(range(0, 10, 2)) >>> list(range(5, 0, -1)) >>> tuple(range(5, 0, -1)) >>> list(range(0, 10, -1)) 퀴즈! for문과 range() 함수
8.
>>> list(range(5, 10)) [5,
6, 7 ,8 ,9] # 5부터 10까지 1씩ì¦ê°€í•˜ëŠ” 리스트 >>> list(range(0, 10, 2)) [0, 2, 4, 6, 8] # 0부터 10까지 2씩ì¦ê°€í•˜ëŠ” 리스트 >>> list(range(5, 0, -1)) [5, 4, 3, 2, 1] # 5부터 0까지 -1씩 ì¦ê°€í•˜ëŠ” 리스트 >>> tuple(range(5, 0, -1)) (5, 4, 3, 2, 1) # 5부터 0까지 -1씩 ì¦ê°€í•˜ëŠ” 튜플 >>> list(range(0, 10, -1)) [] # 0부터 10까지 -1씩ì¦ê°€í•˜ë©´ 무한루프 # ì´ëŸ´ë• 빈리스트가 반환! # ì—러가 나지 ì•ŠìŒ!! ì •ë‹µ for문과 range() 함수
9.
break, continue, pass 1.
break íŠ¹ì •í•œ ì¡°ê±´ì— ì˜í•´, ìˆ˜í–‰í•˜ê³ ìžˆëŠ” 루프를 중단한다 for i in range(10) : if i == 5: break; print( i, end=‘ ‘) 2. continue ìˆ˜í–‰í•˜ê³ ìžˆëŠ” 루프문만 ì¤‘ë‹¨í•˜ê³ ë‹¤ìŒ ë£¨í”„ë¡œ 넘어간다 for i in range(10) : if i == 5: continue; print( i, end=‘ ‘) ê²°ê³¼ : 0 1 2 3 4 ê²°ê³¼ : 0 1 2 3 4 6 7 8 9
10.
break, continue, pass 3.
pass 아무 ì¼ë„ 하지 않는다 for i in range(10) : if i == 5: pass print( i, end=‘ ‘) ê²°ê³¼ : 0 1 2 3 4 5 6 7 8 9 í—¤ì—!? 아무ì¼ë„ ì•ˆí•œë‹¤ê³ ìš”?
11.
break, continue, pass def
prev_funcion(): pass class pre_class(): pass def prev_control(): if x == 3: pass 코드 설계 ì‹œ ì œì–´ë¬¸, 함수, í´ëž˜ìŠ¤ë¥¼ 미리 만들어 놓 ì„ ë•Œ 사용합니다 3. pass
12.
Comprehensions ì§§ê³ ê°„ê²°í•œ 코드로
List, Set, Dict와 ê°™ì€ ìžë£Œêµ¬ì¡°ë¥¼ ìƒ ì„±í• ìˆ˜ 있는 문법 square_list = [] for x in range(11): square_list.append(x*x) print(square_list) 1. List for 문으로 [0, 1, 4 , 9, 16, 25, 36, 49, 64, 81,100] ì˜ ë°ì´í„°ë¥¼ ìƒì„±í•´ë³´ìž square_list = [x*x for x in range(10)] Comprehensions를 사용하면?
13.
Comprehensions >>> pairs =
[] >>> old_boys = [‘재승’, ‘민승’, ‘ìƒí™”’] >>> young_boys = [‘성현’, ‘양욱’, ‘재형’] ì‘ìš© [‘재승’, ‘민승’, ‘ìƒí™”’], [‘성현’, ’양욱’, ’재형’] ë‘ê°œì˜ ë¦¬ìŠ¤ 트를 tupleë¡œ ì§ì§€ì–´ 봅시다. 중첩 for 문 사용 >>> for ob in old_boys : for yb in young_boys: pairs.append( (ob,yb) ) >>> pairs [(‘재승’, ‘성현’), (‘재승’, ‘양욱’), (‘재승’, ‘재형’), (‘민승’, ‘성현’), (‘민승’, ‘양욱’), (‘민승’, ‘재형’), (‘ìƒí™”’, ‘성현’), (‘ìƒí™”’, ‘양욱’), (‘ìƒí™”’, ‘재형’)]
14.
Comprehensions >>> pairs =
[] >>> old_boys = [‘재승’, ‘민승’, ‘ìƒí™”’] >>> young_boys = [‘성현’, ‘양욱’, ‘재형’] ì‘ìš© [‘재승’, ‘민승’, ‘ìƒí™”’], [‘성현’, ’양욱’, ’재형’] ë‘ê°œì˜ ë¦¬ìŠ¤ 트를 tupleë¡œ ì§ì§€ì–´ 봅시다. Comprehension 사용 >>> pairs = [ (x,y) for x in old_boys for y in young_boys] >>> pairs [(‘재승’, ‘성현’), (‘재승’, ‘양욱’), (‘재승’, ‘재형’), (‘민승’, ‘성현’), (‘민승’, ‘양욱’), (‘민승’, ‘재형’), (‘ìƒí™”’, ‘성현’), (‘ìƒí™”’, ‘양욱’), (‘ìƒí™”’, ‘재형’)]
15.
Comprehensions >>> pairs =
[] >>> old_boys = [‘재승’, ‘민승’, ‘ìƒí™”’] >>> young_boys = [‘성현’, ‘민승’, ‘재형’] ì‘ìš© [‘재승’, ‘민승’, ‘ìƒí™”’], [‘성현’, ’민승’, ’재형’] ë‘ê°œì˜ ë¦¬ìŠ¤ 트를 tupleë¡œ ì§ì§€ì–´ 봅시다. 중첩 for 문 사용 >>> for ob in old_boys : for yb in young_boys: if ob != yb: pairs.append( (ob,yb) ) >>> pairs [(‘재승’, ‘성현’), (‘재승’, ‘민승’), (‘재승’, ‘재형’), (‘민승’, ‘성현’), (‘민승’, ‘재형’), (‘ìƒí™”’, ‘성현’), (‘ìƒí™”’, ‘민승’), (‘ìƒí™”’, ‘재형’)]
16.
Comprehensions >>> pairs =
[] >>> old_boys = [‘재승’, ‘민승’, ‘ìƒí™”’] >>> young_boys = [‘성현’, ‘민승’, ‘재형’] ì‘ìš© [‘재승’, ‘민승’, ‘ìƒí™”’], [‘성현’, ’민승’, ’재형’] ë‘ê°œì˜ ë¦¬ìŠ¤ 트를 tupleë¡œ ì§ì§€ì–´ 봅시다. Comprehension 사용 >>> pairs = [ (x,y) for x in old_boys for y in young_boys if x != y] >>> pairs [(‘재승’, ‘성현’), (‘재승’, ‘민승’), (‘재승’, ‘재형’), (‘민승’, ‘성현’), (‘민승’, ‘재형’), (‘ìƒí™”’, ‘성현’), (‘ìƒí™”’, ‘민승’), (‘ìƒí™”’, ‘재형’)]
17.
Comprehensions >>> a =
{x for x in ‘abrdabrdabrd’ if x not in ‘abc’} >>> a 2. Set ì˜ˆì œ {‘r’, ‘d’} >>> a = { x : x*x for x in (2, 4, 6)} >>> a 3. Dict ì˜ˆì œ { 2:4, 4:16, 6:36 }
18.
function 함수 : íŠ¹ì •
í–‰ìœ„ì— ëŒ€í•´ ê¸°ìˆ í•œ 소스 코드 í´ëž˜ìŠ¤ : íŠ¹ì • 행위와 ìƒíƒœë¥¼ ë‹´ì„ ìˆ˜ 있는 ê°ì²´ë¥¼ ìƒì„±í•˜ê¸° 위한 명세서 모듈 : 함수, í´ëž˜ìŠ¤ ë“±ì„ í¬í•¨í•˜ì—¬ ë…립ì ì¸ íŒŒì¼(.py)ë¡œ ì €ìž¥í•˜ì—¬ ì–¸ì œë“ ì§€ 호출하여 ìž¬ì‚¬í• ìˆ˜ 있는 공통 소스 ì½”ë“œë“¤ì˜ ì§‘í•© Don’t Repeat Yourself! >>> â€œê°™ì€ ì†ŒìŠ¤ë¥¼ 반복해서 작성하지 ë§ë¼â€ 소스 재사용!?
19.
function 함수 : íŠ¹ì •
í–‰ìœ„ì— ëŒ€í•´ ê¸°ìˆ í•œ 소스 코드 í´ëž˜ìŠ¤ : íŠ¹ì • 행위와 ìƒíƒœë¥¼ ë‹´ì„ ìˆ˜ 있는 ê°ì²´ë¥¼ ìƒì„±í•˜ê¸° 위한 명세서 모듈 : 함수, í´ëž˜ìŠ¤ ë“±ì„ í¬í•¨í•˜ì—¬ ë…립ì ì¸ íŒŒì¼(.py)ë¡œ ì €ìž¥í•˜ì—¬ ì–¸ì œë“ ì§€ 호출하여 ìž¬ì‚¬í• ìˆ˜ 있는 공통 소스 ì½”ë“œë“¤ì˜ ì§‘í•© Don’t Repeat Yourself! >>> â€œê°™ì€ ì†ŒìŠ¤ë¥¼ 반복해서 작성하지 ë§ë¼â€ 소스 재사용!?
20.
반환값 ì¸ìžê°’ 함수명 함수 ì •ì˜ í‚¤ì›Œë“œ function >>>
def drink_water(name): print(name + “(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤â€) return name >>> drink_person = drink_water(“양욱â€) ì–‘ìš±(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ >> > drink_person ì–‘ìš± >>> type(drink_water(“양욱â€)) ì–‘ìš±(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ <class ‘string’> >>> type(drink_water) <class ‘function’> í•¨ìˆ˜ì˜ 3요소 : 함수명, ì¸ìžê°’, 반환값 1. 함수 ì •ì˜
21.
function >>> def drink_water(name): print(name
+ “(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤â€) >>> drink_water(“양욱â€) ì–‘ìš±(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ >>> type(drink_water(“양욱â€)) ì–‘ìš±(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ <class ‘NoneType’> >>> print(drink_water(“양욱â€)) ì–‘ìš±(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ None ë°˜í™˜ê°’ì´ ì—†ì„ë•Œ : None 1. 함수 ì •ì˜ => Object!!!!
22.
function >>> def drink_water(name=“양욱â€): print(name
+ “(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤â€) >>> drink_water() ì–‘ìš±(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ >>> dring_water(‘민승’) 민ìˆ(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤ def func_name(arg=value) 2. Default Argument Value
23.
function drink_water 함수를 ì •ì˜í•´
봅시다! >>> drink_water(3) 문ìžì—´ì„ ìž…ë ¥í•´ì£¼ì„¸ìš”! >>> drink_water() ì¸ìžê°’ì„ ìž…ë ¥í•´ì£¼ì„¸ìš”! >>> drink_water(‘건í¬â€™) ê±´í¬(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤! 간단한 예외처리를 해봅시다! 2. Default Argument Value ì •ë‹µ!!! >>> def drink_water(name=None): if name == None: print(“ì¸ìžê°’ì„ ìž…ë ¥í•´ì£¼ì„¸ìš”!â€) elif type(name) != str : print(“문ìžì—´ì„ ìž…ë ¥í•´ì£¼ì„¸ìš”!â€) else : print(name + “(ì´)ê°€ ë¬¼ì„ ë§ˆì‹ë‹ˆë‹¤â€)
24.
function >>> def my_car(
manufacturer, seats=4, type=‘세단’): pirnt(‘내 차는’, manufacturer, ‘ì—ì„œ ì œìž‘ëœâ€™, str(seats), ‘ì¸ìŠ¹â€™, type, ‘ì´ë‹¤â€™) >>> my_car(‘현대’) ë‚´ 차는 현대 ì—ì„œ ì œìž‘ëœ 4 ì¸ìŠ¹ 세단 ì´ë‹¤. >>> my_car(manufacturer=‘현대’) ë‚´ 차는 현대 ì—ì„œ ì œìž‘ëœ 4 ì¸ìŠ¹ 세단 ì´ë‹¤. >>> my_car(manufacturer=‘기아’, type=‘SUV’) ë‚´ 차는 기아 ì—ì„œ ì œìž‘ëœ 4 ì¸ìŠ¹ SUVì´ë‹¤. >>> my_car(type=‘SUV’, manufacturer=‘기아’) ë‚´ 차는 기아 ì—ì„œ ì œìž‘ëœ 4 ì¸ìŠ¹ SUVì´ë‹¤. • positional : 위치 ì¸ìžê°’ • keyword : default value를 가지는 ì¸ìžê°’ 3. Keyword Argument
25.
function >>> def my_car(
manufacturer, seats=4, type=‘세단’): pirnt(‘내 차는’, manufacturer, ‘ì—ì„œ ì œìž‘ëœâ€™, str(seats), ‘ì¸ìŠ¹â€™, type, ‘ì´ë‹¤â€™) >>> my_car(‘아우디’, 2 , ‘스í¬ì¸ 카’) ë‚´ 차는 ì•„ìš°ë”” ì—ì„œ ì œìž‘ëœ 2 ì¸ìŠ¹ 스í¬ì¸ ì¹´ ì´ë‹¤ >>> my_car(‘아우디’, seats=2) ë‚´ 차는 ì•„ìš°ë”” ì—ì„œ ì œìž‘ëœ 2 ì¸ìŠ¹ 세단 ì´ë‹¤ >>> my_car(‘아우디’, type=스í¬ì¸ ì¹´) ë‚´ 차는 ì•„ìš°ë”” ì—ì„œ ì œìž‘ëœ 4 ì¸ìŠ¹ 스í¬ì¸ ì¹´ ì´ë‹¤ >>> my_car() TypeError >>> my_car(manufacturer=‘아우디’, 2) SyntaxError >>> my_car(“현대â€, manufacturer=‘아우디’) TypeError >>> my_car(“현대â€, color=“í°ìƒ‰â€) TypeError 3. Keyword Argument
26.
function >>> def landvibe_member(name
, *members, **landvibe_info): print(“땅울림 회장 ì´ë¦„ :â€, name) print(“회ì›ë“¤ 목ë¡ì€ 아래와 같습니다.â€) for member in members: print(member, end=“ “) print(‘-’ * 40) for key in landvibe_info.keys(): print(key, “:â€, landvibe_info[key]) *args : 튜플형 ë°ì´í„° (리스트x) **args : ì‚¬ì „í˜• ë°ì´í„° 4. Arbitrary Argument Lists (가변 ì¸ìž 리스트)
27.
function >>> landvibe_member(“양민승â€) 4. Arbitrary
Argument Lists (가변 ì¸ìž 리스트) 땅울림 회장 ì´ë¦„ : 양민승 회ì›ë“¤ 목ë¡ì€ 아래와 같습니다. ---------------------------------------- >>> members = â€œê·œì •â€, “건í¬â€, “ë„완†>>> landvibe_member(“양민승â€, memebers) 땅울림 회장 ì´ë¦„ : 양민승 회ì›ë“¤ 목ë¡ì€ 아래와 같습니다. ê·œì • ê±´í¬ ë„완 ----------------------------------------
28.
function 4. Arbitrary Argument
Lists (가변 ì¸ìž 리스트) >>> members = â€œê·œì •â€, “건í¬â€, “ë„완†>>> landvibe_member(“양민승â€, memebers, ì˜ë¬¸ì´ë¦„=‘landvibe’, 우승횟수=“5번â€) 땅울림 회장 ì´ë¦„ : 양민승 회ì›ë“¤ 목ë¡ì€ 아래와 같습니다. ê·œì • ê±´í¬ ë„완 ---------------------------------------- ì˜ë¬¸ì´ë¦„ : landvibe 우승횟수 : 5번
29.
function 4. Arbitrary Argument
Lists (가변 ì¸ìž 리스트) >>> def landvibe_member(*members): print(members) >>> tuple_members = â€œê·œì •â€, “건í¬â€, “ë„완†>>> list_members = [â€œê·œì •â€, “건í¬â€, “ë„완â€] >>> landvibe_member(tuple_members) ([â€œê·œì •â€, “건í¬â€, “ë„완â€], ) *args : 튜플형 ë°ì´í„° (리스트x) (â€œê·œì •â€, “건í¬â€, “ë„완â€) >>> landvibe_member(list_members)
30.
ê³¼ì œ!!! 9ì›” 23ì¼ (금)
까지 ì œì¶œí•´ì£¼ì„¸ìš”~ kimkh6554@gmail.com BeakJoon Online Judge https://www.acmicpc.net/
Download