Language/Python

반응형
반응형
Language/Python

[코딩도장]33.클로저

33. 클로저 사용 33.1 변수의 사용 범위 알아보기 x = 10 # 전역변수(global variable) # ----------- 전역범위 시작 ------------- def foo(): print(x) foo() print(x) # ----------- 전역범위 끝 --------------- ========================== 10 10 # ----------- 지역범위 시작 ------------- def foo(): x = 20 # 지역변(local variable) print(x) # ----------- 지역범위 끝 ------------- foo() ========================== 20 # 함수 안에서 전역 변수 변경 x = 10 # 전역변수 def foo..

Language/Python

[코딩도장]32.람다표현식

32. 람다 표현식(lambda expression) 32.1 람다 표현식 함수 def plus_ten(x): return x + 10 print(plus_ten(1)) 11 print(lambda x: x + 10) plus_lambda = lambda x: x + 10 # PEP 8: E731 do not assign a lambda expression, use a def # PEP : Python Enhancement Proposal 파이선 가이드 # PEP 8부터 lambda라는 명칭대신에 def(함수)로 정의하도록 권장 print(plus_lambda(1)) 11 # 람다 표현식 안에서는 변수를 만들 수 없다 # print(lambda x:y=10; x+y)(1) # SyntaxError: in..

Language/Python

[코딩도장]31.재귀호출

31. 함수에서 재귀호출 사용하기 31.1 재귀호출 - 최대 재귀 길이 : 1000 - RecursionError : 최대 재귀 길이를 초과하면 에러 발생 # RecursionError: maximum recursion depth exceeded while calling a Python object def hello(): print("hello, world") hello() hello() # 에러 조건 만들기 def hello(count): if count == 0: return print("hello, wordl", count) count -= 1 hello(count) hello(5) ========================== hello, wordl 5 hello, wordl 4 hello, w..

Language/Python

[코딩도장]30. 위치 인수와 키워드 인수 사용

30. 위치 인수와 키워드 인수 사용 30.1 위치 인수와 리스트 언패킹 def print_numbers(a, b, c): print(a) print(b) print(c) print_numbers(10, 20, 30) ========================== 10 20 30 # 언패킹 * # 리스트(튜플) 앞에 *를 붙이면 언패킹 됨(리스트의 포장의 푼다) x = [10, 20, 30] print_numbers(*x) ========================== 10 20 30 # 변수 대신 리스트 앞에 * 붙이기도 가능 print_numbers(*[10, 20, 30]) ========================== 10 20 30 # 가변 인수 함수 def print_numbers(*ar..

Language/Python

[코딩도장]29. 함수 사용

29. 함수 사용 29.1~2 Hello, world 출력 함수 # 함수를 먼저 호출한 뒤 함수를 만들 수 없다. # NameError: name 'hello' is not defind def hello(): print('Hello, world') hello() Hello, world # 빈 함수 만들기 def empty(): pass empty() # 덧셈 함수 만들기 def add(a, b): print(a + b) add(10, 20) 30 # 함수 독스트링 사용하기 # 콜론 다음줄에 """ """(큰 따옴표 권장)로 함수 설명을 넣을 수 있다. # 함수를 호출해도 출력 X # documentation strings, docstrings def docstrings(a, b): """ 독스트링 함수 ..

Language/Python

[코딩도장]28.회문판별과 N-gram 만들기

28.회문판별과 N-gram 만들기 28.1 회문 판별하기 회문(palindrome) 순서를 거꾸로 읽어도 제대로 읽은 것과 같은 단어와 문장을 의미 - level, SOS, rotator, nurses run 등 - 회문은 유전자 염기서열 분석에서 많이 사용 - N-gram은 빅데이터 분석, 검색 엔진에서 많이 사용, 특히 구글은 책들을 스캔해서 N-gram viewer을 만들었는데 사람들의 언어 패턴을 시대별로 분석하기도 함 28.1 반복문으로 문자 검사하기 word = 'level' is_palindrome = True for i in range(len(word) // 2): # 회문 판별값을 저장할 변수, 초깃값은 true if word[i] != word[-1 - i]: is_palindrome..

emojiyeon
'Language/Python' 카테고리의 글 목록 (3 Page)