함수 진급 (3)day14
어제의 내용
교체기
교체기 대상은 반드시 교체 가능한 대상이고, 교체 가능한 대상은 반드시 교체기 대상이 아니다.
교체 가능 객체
__iter__
메서드가 포함된 데이터 유형숫자 유형을 제외하고는 모두 교체 가능한 대상이다
반복자 객체
__iter__
및 __next__
메소드가 포함된 데이터 유형파일만 교체기 대상
교체 가능한 대상에
__iter__
를 더하면 교체기 대상이다for 순환 원리
lt = [1,2]
lt_iter = lt.__iter__()
while True:
try:
print(lt_iter.__next__())
except StopIteration as e:
break
삼원식
조건성립if조건else조건성립불가
목록 유도식
[i for i in range(10)]
사전 생성식
{i:i for i in range(10)}
zip
여러 개의 교체 가능한 대상을 한 번에 모든 교체 가능한 대상 종의 원소를 읽고 원소로 조합한다
생성기 표현식
(i for i in range(10))
공간 절약형생성기
본질은 교체기, 사용자 정의 교체기, yield 키워드를 포함하는 함수
def ge():
yield
yield
귀속
함수 호출 함수 자체, 퇴출 조건 있음
count = 0
def a():
global count
print(count)
if count = 100:
return
count += 1
a()
오늘의 내용
익명 함수
lambda :
익명 함수는 일반적으로 단독으로 사용하지 않으며 Filter ()/map ()/sorted ()/목록의sort () 내장 방법과 연결됩니다
salary_dict = {
'nick':2000,
'wick':3000,
'jason':5000,
'egom':10000
}
#
salary_list = list(salary_dict.items())
# 1
def func(i):
return i[1]
salary_list.sort(key=func)
print(salary_list)
# 2
salary_list.sort(key=lambda i:i[1])
print(salary_list)
salary_list = sorted(salary_list,key=lambda i:i[1],reverse = True)
print(list(filter(lambda i:i[1] > 5000,salary_list))) # [('egom':10000)]
print(list(map(lambda i:i[1]+2000,salary_list))) # [4000,5000,7000,12000]
기본 제공 방법
장악하다
bytes(' ',encoding = 'utf8')
print(chr(97)) # a
print(ord('a')) # 97
print(divmod(10,4)) # /
lt = [1,2,3]
for i,j in enumerate(lt):
print(i,j) # /
s = '[1,2,3]'
print(eval(s)) # [1,2,3] type:str
print(hash(1)) # , ,
이해하다.
메서드
역할
abs
절대치
all
True 또는 False
any
오직 하나가 진실이면 진실이고, 그렇지 않으면 가짜이다
bin
바이너리로 변환
oct
8진법
hex
16진법
dir
모듈의 모든 메서드 나열
frozenset
불가변 집합
globals/loals
모든 글로벌 변수/현재 위치의 모든 변수 나열
pow
활용단어참조
round
반올림
slice
슬라이스
sum
화해를 구하다
__import__
문자열로 모듈 가져오기
예외 처리
논리 오류만 포착할 수 있습니다
try:
except Exception as e: #
print(e) #
finally:
# ,
assert 단언
assert 조건
assert 1 == 1 #
assert 1 == 2 #
raise 자발적으로 오류 던지기
기본 제공 방법 사용
프로세스 프로그래밍(사상)
IPO 프로그래밍 = 프로세스 프로그래밍
프로세스 프로그래밍: 유수선과 유사하게 한 걸음 한 걸음 아래로 내려가다
장점: 논리적 명료성
단점: 이전 단계가 틀렸고 다음 단계가 틀렸다
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.