goodthings4me.tistory.com
■ 리스트 컴프리헨션(List Comprehension)
- 리스트 내에 계산식, for 문, if 문 등을 삽입하여 리스트를 생성하는 것
- 이 표현식은 list, set, dict과 같은 자료형, 그리고 소괄호를 이용한 generator 객체 생성에도 이용 가능함
# 짝수 구하기
even_num = [n for n in range(1, 11) if not n % 2]
print(even_num) # [2, 4, 6, 8, 10]
# 3의 배수 구하기
three_multi = [n for n in range(1, 11) if not n % 3]
print(three_multi) # [3, 6, 9]
# 이중 for문 (주사위 2개로 나올 수 있는 경우의 수)
dice = [str(i) + ':' + str(j) for i in range(1, 7) for j in range(1, 7)]
print(dice)
'''
['1:1', '1:2', '1:3', '1:4', '1:5', '1:6', '2:1', '2:2', '2:3', '2:4', '2:5',
'2:6', '3:1', '3:2', '3:3', '3:4', '3:5', '3:6', '4:1', '4:2', '4:3', '4:4',
'4:5', '4:6', '5:1', '5:2', '5:3', '5:4', '5:5', '5:6', '6:1', '6:2', '6:3',
'6:4', '6:5', '6:6']
'''
■ 이터러블(iterable) 객체 활용
- iterable은 반복 가능한의 뜻으로, iterable 객체는 한 번에 하나씩 자료를 순서대로 반환(추출)할 수 있는 반복 가능한 객체(list, tuple, str, range, dict, set)를 의미한다.
- iterable 객체는 내장함수 또는 스페셜 메소드(__iter__, iter())로 생성된 객체이다. iter() 함수에 iterable 객체를 인자로 전달하면 iter 함수는 iterable 객체에 접근하는 도구인 "iterator 객체"를 생성해서 반환한다.
"iterable 객체를 대상으로 iter 함수를 호출해서 iterator 객체를 만든다."
- 값 추출은 스페셜 메소드(__next__, next())를 사용하고, 값 추출이 완료된 후 다시 추출하면 Stopiteration 예외가 발생한다.
item = ['식빵', '쨈', '야채', '햄', '계란', '먹기', '커피']
brunch = iter(item)
print('\n*** 브런치 준비 ***\n')
try:
print(next(brunch), '놓고')
print(next(brunch), '바르고')
print(next(brunch), '올리고')
print(next(brunch), '넣고')
print(next(brunch), '얹고')
print('맛있게', next(brunch), '~~')
print('그리고', next(brunch), '마시기')
print(next(brunch)) # StopIteration 발생
except StopIteration:
print('\n잘 먹었다!!!')
[실행 결과]
*** 브런치 준비 ***
식빵 놓고
쨈 바르고
야채 올리고
햄 넣고
계란 얹고
맛있게 먹기 ~~
그리고 커피 마시기
잘 먹었다!!!
※ 스페셜 메서드를 통해 함수 호출하는 형태
ds = [1, 2, 3]
ir = ds.__iter__() # iter(ds) 대신 __iter__() 사용
print(ir.__next__()) # 1 # next(ir) 대신 __next__() 사용
print(ir.__next__()) # 2
# iterable 객체 확인 방법
print(hasattr(ds, '__iter__')) # True
[참고 자료] 윤성우의 열혈 파이썬 중급편
블로그 인기글
Windows 10 탐색기 느려지는 증상과 해결하는 방법
잘 작동하던 Windows 10 탐색기가 갑자기 느려지는 증상이 발생했을 때 어떻게 조치를 하는지 구글에서 찾아보니 많은 해결책들이 있었으나 어떤 것이 정확한 해결책인지는 알 수가 없었다. 그래서 해결방법이라고 제시한 것들을 정리해 보았다. 윈도우 탐색기가 느려지는 증상 해결 방법 어느 순간부터 응용프로그램(VS Code 등)에서 폴더 열기나 파일 불러오기를 했을 때 검색 팝업창이 안 뜨거나 열리는 시간이 엄청 느려지는 증상과, 더불어서 탐색기도 실행이 많이 느려지는 증상이 있었다. 기존에 사용하던 VS Code에 openpyxl 설치 후 실행이 느려지는 증상이 발생하더니 윈도우10 탐색기도 느려져서 사용할 수가 없었다. 노트북에 OS(Windows10)를 설치한지 1년이 다 되어가긴 했지만, 1개월 전..
goodthings4me.tistory.com
[국세청] 현금영수증가맹점으로 가입바랍니다. 메시지 해결방법(개인사업자)
▶ 현금영수증 가맹점 가입 메시지를 받고... 온라인 쇼핑몰 사업을 시작하려고 사업자등록증을 발급받고 난 후 얼마 안 있어서 국세청으로부터 어느 시점까지 '현금영수증 가맹점'으로 가입하라는 문자메시지가 받았었다. 그 메시지 기한이 오늘 도래했는데, 인터넷에서 찾아보니 홈택스에서 현금영수증 발급 사업자 신청을 할 수가 있었다. [관련내용] 홈>국세정책/제도>전자(세금)계산서/현금영수증/신용카드>현금영수증∙신용카드>가맹점가입 ▶ 홈택스 사이트에서 신청하는 절차는 다음과 같다. 우선, 홈택스에 로그인을 해야 합니다. 세상이 좋아져서 공인인증서 없이도 손쉽게 간편인증 로그인이 가능하다. 여러 인증방법 중 카카오톡 인증이 가장 편리한 거 같다. 간편인증 로그인 후 상단 '조회/발급' 탭 클릭 후 '현금영수증>현금..
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
'코딩 연습 > 코딩배우기' 카테고리의 다른 글
[python] 제너레이터(Generators) 함수 & 표현식 (0) | 2020.08.21 |
---|---|
[python] 소수(素數, prime number) 구하기 (0) | 2020.08.21 |
[python] n부터 시작하여 m까지 연속하는 숫자의 합은? (0) | 2020.08.20 |
[python] 클래스(class)와 객체(object) 이해하기 (0) | 2020.08.19 |
[python] 객체처럼 다뤄지는 함수, 그리고 이름 없는 함수, 람다(lambda) (0) | 2020.08.19 |
댓글