goodthings4me.tistory.com
■ 재귀 함수
def recursive_ex1(n):
if n == 1:
return 1
else:
f = n * recursive_ex1(n - 1)
print(f, end=' ')
return f
recursive_ex1(5) # 2 6 24 120
'''
n = 5 f = 5 * recursive_ex1(4); print(f, end=' '); return f
n = 4 f = 4 * recursive_ex1(3); print(f, end=' '); return f
n = 3 f = 3 * recursive_ex1(2); print(f, end=' '); return f
n = 2 f = 2 * recursive_ex1(1); print(f, end=' '); return f
n = 1 if n == 1: return 1
f = 2 * 1 print(2) return 2
f = 3 * 2 print(6) return 6
f = 4 * 6 print(24) return 24
f = 5 * 24 print(120) return 120
'''
def recursive_ex2(n):
if n >= 1:
print(n, end= ' ')
recursive_ex2(n - 1)
else:
return
res = recursive_ex2(10) # 10 9 8 7 6 5 4 3 2 1
def recursive_ex3(n):
if n >= 1:
recursive_ex3(n - 1)
print(n, end= ' ')
else:
return
res = recursive_ex3(10) # 1 2 3 4 5 6 7 8 9 10
■ 람다 함수
mysum = lambda n1, n2: n1 + n2
print(mysum(10, 20)) # 30
# 람다 default 매개변수
mymul = lambda n1, n2 = 5: n1 * n2
print(mymul(5, 4), mymul(5)) # 20 25
# 람다 자체 호출
print((lambda n1, n2: n1 ** n2)(2, 10)) # 1024 --> (lambda 함수)(2, 10)
# 리스트 값 수정을 위한 함수, 람다, 리스트컴프리헨션
# 함수
def add_list(n):
for i in range(len(n)):
n[i] = n[i] + 10
lst1 = [1, 2, 3, 4]
add_list(lst1)
print(lst1) # [11, 12, 13, 14]
# 람다 함수
lst2 = [1, 2, 3, 4]
lst2 = list(map(lambda n: n + 10, lst2))
print(lst2) # [11, 12, 13, 14]
# 리스트 컴프리헨션
lst3 = [1, 2, 3, 4]
lst3 = [n + 10 for n in lst3]
print(lst3) # [11, 12, 13, 14]
# 두 리스트 요소 더하기
# 함수
def add_list2(n1, n2):
res = []
for i in range(len(n1)):
res.append(n1[i] + n2[i])
return res
lst4 = [1, 2, 3, 4]
lst5 = [5, 6, 7, 8]
print(add_list2(lst4, lst5)) # [6, 8, 10, 12]
# 람다 함수
add_lst = list(map(lambda n1, n2: n1 + n2, lst4, lst5))
print(add_lst) # [6, 8, 10, 12]
블로그 인기글
Windows 10 탐색기 느려지는 증상과 해결하는 방법
잘 작동하던 Windows 10 탐색기가 갑자기 느려지는 증상이 발생했을 때 어떻게 조치를 하는지 구글에서 찾아보니 많은 해결책들이 있었으나 어떤 것이 정확한 해결책인지는 알 수가 없었다. 그래서 해결방법이라고 제시한 것들을 정리해 보았다. 윈도우 탐색기가 느려지는 증상 해결 방법 어느 순간부터 응용프로그램(VS Code 등)에서 폴더 열기나 파일 불러오기를 했을 때 검색 팝업창이 안 뜨거나 열리는 시간이 엄청 느려지는 증상과, 더불어서 탐색기도 실행이 많이 느려지는 증상이 있었다. 기존에 사용하던 VS Code에 openpyxl 설치 후 실행이 느려지는 증상이 발생하더니 윈도우10 탐색기도 느려져서 사용할 수가 없었다. 노트북에 OS(Windows10)를 설치한지 1년이 다 되어가긴 했지만, 1개월 전..
goodthings4me.tistory.com
유튜브 영상 등의 URL 주소를 QR코드로 만들기
네이버 QR코드, makeQR, MUST QRcode, 무료 온라인 QRCode 생성기 등의 웹사이트에서 유튜브 영상 등의 URL을 입력하여 QR코드를 만들 수 있다. QR코드를 생성할 수 있는 사이트와 프로그램 URL 주소를 붙여넣기 한 후 "QR 코드 생성" 버튼을 클릭하면 큐알코드가 이미지로 생성되고, 다운로드도 할 수 있는 사이트 https://truedoum.com/useful/qrcode/ # 유튜브에서 동영상 URL을 복사하는 방법 유튜브에서 QR코드를 만들 동영상을 검색한다. 해당 동영상을 클릭한다. 동영상 위에서 마우스 우클릭 후 나오는 팝업창에서 “동영상 URL 복사”를 클릭하거나 영상 하단의 “공유”를 클릭하여 나온 창에서 URL를 복사한다. 아래의 웹사이트 중 하나를 선택한 후 복사..
goodthings4me.tistory.com
엑셀 시트 분리 저장 - 엑셀 파일의 시트를 분리하여 저장하기
엑셀을 사용하다 보면 엑셀 시트를 분리해서 저장해야 할 때가 있다. 최근에도 이런 경우가 발생하여 구글링 후 엑셀 시트 분리 업무를 수행하고 내친김에 다른 사람들도 사용할 수 있도록 파이썬 tkinter로 프로그램으로 만들어 보았다. Excel Sheets 분리 저장하는 프로그램(with 파이썬 Tkinter) ※ 프로그램 다운로드(네이버 MYBOX에서 공유) : ExcelSeparateSheets.zip ▶ 프래그램을 실행하면 다음과 같이 초기 화면이 보인다. 찾아보기 : 엑셀 파일이 있는 폴더를 선택한다. (프로그램이 있는 최상위 디렉터리가 열린다) 실행하기 : 프로그램 실행 버튼 상태 변경 순서 : 실행전 → 실행 중 → Sheet "OOO" 분리 저장 중 → 실행 완료 실행 결과 확인 : 엑셀 파..
goodthings4me.tistory.com
'코딩 연습 > 코딩배우기' 카테고리의 다른 글
[django] 파이썬 Django(장고) 템플릿 문법 (0) | 2020.09.22 |
---|---|
[python] 파이썬 스페셜 메소드 (Special Method) 사용 예제 (0) | 2020.09.22 |
[python] 파이썬 datetime(), time(), localtime() (0) | 2020.09.20 |
[python] 파이썬 함수의 위치 인자, 키워드 인자 언패킹 (0) | 2020.09.19 |
[python] 파이썬의 변수, 객체, 그리고 참조 주소 (0) | 2020.09.19 |
댓글