Python
(26)람다 표현식 사용하기
람다 표현식이란? lambda 매개변수들 : 식 함수를 굳이 생성하지 않아도 단순히 식으로 써 표현할 수 있는 방식이다. ***람다 표현식 안에서는 변수를 생성할 수 없다. def plus_ten(x): return x + 10 plus_ten(1) 11 위의 함수를 람다 표현식으로 해보면 lambda x: x+10 결과는 함수객체로 나온다. 값을 반한하기 위해선 변수를 할당하면된다. (람다 표현식은 익명함수(anonymous function)이라고도 부른다.) ai = lambda x: x+10 ai(1) 11 변수에 할당하지 않고 람다 표현식 자체를 호출하기 (lambda 매개변수들: 식)(인수들) 사실 위처럼 람다 표현식을 변수에 또 할당하는 방법은 함수를 만드는것과 큰 차이가 없다. 아래는 람다..
(25)재귀함수
재귀함수란? 함수 안에서 함수 자기자신을 호출하는 방식을 말한다. def hello(): print('hello') hello() hello() #결과 hello hello hello (이하생략) File "C:\project\recursive_function_error.py", line 5, in hello() File "C:\project\recursive_function_error.py", line 3, in hello hello() File "C:\project\recursive_function_error.py", line 3, in hello hello() File "C:\project\recursive_function_error.py", line 3, in hello hello() [Previ..
(24)위치 인수,가변 인수,키워드 인수
위치인수(positional argument) - 위치가 정해져 있는 인수 가변인수(variable argument) - 개수가 정해져있지 않은 인수 키어드 인수(keyword argument) - 인수에 키워드(이름)를 붙인다 언패킹(unpacking) - 포장을 푼다는 의미로 리스트,튜플 같은 반복가능 객체의 포장을 푸는것 애스터리스크(*) - 리스트,튜플,딕셔너리 앞에 붙이면 언패킹이 된다. 위치인수 def print_numbers(a,b,c): print(a) print(b) print(c) #결과 print_numbers(10,20,30) 10 20 30 a,b,c 의 순서가 정해져 있다. 언패킹 사용하기 함수(*리스트) 함수(*튜플) x = [10,20,30] def aa(a,b,c): pri..
(23)함수 사용하기
함수(function) - 코드를 한곳에 모아 놓은것 변수() 이런모양을 우리는 함수라고 한다. input(),print()같이 이미 있는 함수도 있지만 직접 코드를 할당해서 사용도 가능하다 함수의 장점 코드의 용도를 구분할 수 있다. 코드를 재사용할 수 있다. 실수를 줄일 수 있다. def 로 ding 출력 함수 만들기 def 함수이름(): 코드 *def 은 define에서 따온 키워드 #함수 만들기 def abcd(): print('ding') #함수 호출하기 abcd() #결과 ding #오류 #함수 호출하기 abcd() #함수 만들기 def abcd(): print('ding') #결과 Traceback (most recent call last): File "C:\project\function.p..
(22)회문 & N-gram
회문 이란? 거꾸로 읽어도 제대로 읽은 것과 같은 단어 or 문장 reversed(word) 반복문으로 회문 확인 하기 word = input('단어를 입력하세요: ') x = True # 변수의 초기값을 True로 설정 for i in range(len(word)//2): #절반만 반복 홀수 문자일수도 있으니 나머지를 제한값만 구함 if word[i] != word[-1 - i]: #왼쪽 문자와 오른쪽 문자를 비교해서 다르면 x = False #회문이 아님 break #한부분이라도 아니라면 회문이 아니기에 더이상 연산할 필요가 없음 #반복문에서 아무 일도 안 일어 회문이고 난다면 변수는 초기값인 True이다. print(x) #판변값 출력 True이면 회문,False이면 회문이 아니다. 아래는 if w..
(21)파이썬으로 파일에 문자열 쓰고,읽기
파일에 문자열 쓰기 파일객체 = open(파일이름, 파일모드) 파일객체.write('문자열') 파일객체.close() file = open('hello.txt', 'w') # hello.txt 파일을 쓰기 모드(w)로 열기. 파일 객체 반환 file.write('Hello, world!') # 파일에 문자열 저장 file.close() # 파일 객체 닫기 이때 open() 함수는 이미 있는 파일을 열수도 있지만 없는 파일을 생성하는 기능도 한다. 파일의 문자열 읽기 파일객체 = open(파일이름, 파일모드) 파일객체.read('문자열') 파일객체.close() file = open('hello.txt', 'r') # hello.txt 파일을 읽기 모드(r)로 열기. 파일 객체 반환 s = file.rea..