파이톤 흰둥이의 진급길 - 서열, lambda, 귀속
5228 단어 자라
파이톤 흰둥이의 진급길 - 서열, lambda, 귀속
https://study.163.com/course/courseLearn.htm?courseId=378003#/learn/video?lessonId=658090&courseId=378003
1. 시퀀스
1.1 시퀀스 정의
이전 학습에서 목록, 원조와 문자열은 함께 공부했다. 왜냐하면 그들은 많은 공통점이 있기 때문이다.
1.2 시퀀스에 대한 일반적인 BIF
(1)list(): 교체 가능한 대상을 목록으로 변환
>>> a=list()
>>> a
[]
>>>
>>> b=('YOU ARE THE BEST')
>>> b=list('YOU ARE THE BEST')
>>> b
['Y', 'O', 'U', ' ', 'A', 'R', 'E', ' ', 'T', 'H', 'E', ' ', 'B', 'E', 'S', 'T']
>>>
>>> c=list((1,2,3,4,5)) #
>>> c
[1, 2, 3, 4, 5]
>>>
>>> d=list([1,2,3,4,5])
>>> d
[1, 2, 3, 4, 5]
(2)tuple(): 교체 가능한 대상을 원조로 변환
(3)str(obj):obj 대상을 문자열로 변환
(4)len(sub):sub 매개 변수의 길이를 되돌려줍니다
>>> str1='you are the best'
>>> len(str1)
16
(5)max(): 반환 서열이나 매개 변수 집합의 최대 값. 즉, max()의 매개 변수는 하나의 서열일 수 있고 반환 값은 이 서열의 최대 값이다.여러 개의 매개 변수일 수도 있습니다. 그러면 되돌아오는 것은 이 매개 변수 중 가장 큰 것입니다.
>>> str1='you are the best'
>>> len(str1)
16
>>> max(str1)
'y'
>>> str2='a'
>>> max(str1,str2)
'you are the best'
(6)min(): 사용법은 max()와 같지만 효과는 반대로 서열이나 매개 변수 집합의 최소값을 되돌려줍니다.max()와min() 방법을 사용하면 서열이나 파라미터의 데이터 형식이 통일되어야 합니다. 그렇지 않으면 오류가 발생할 수 있습니다.
(7)sum(iterable[,start]): 서열iterable의 총계를 되돌려주는 데 사용되며, 또한sum에는 선택할 수 있는 매개 변수가 있습니다. 이 매개 변수를 설정하면 이 매개 변수부터 추가하는 것을 의미하며 기본값은 0입니다.
>>> tuple1=1,2,3,4,5
>>> sum(tuple1,20)
35
(8)sorted(): 목록의 내장 방법sort()는 목록의 제자리 정렬을 실현한다.sorted () 는 정렬된 새 목록을 되돌려줍니다.
>>> list1=(1,5,-3,0,8,6)
>>> list2=list1
>>> sorted(list2)
[-3, 0, 1, 5, 6, 8]
>>> list1
(1, 5, -3, 0, 8, 6)
>>> list2
(1, 5, -3, 0, 8, 6)
(9)reversed (): 뒤집힌 교체기 대상을 되돌려줍니다.그것은 목록을 되돌려주는 것이 아니라 교체기의 대상을 되돌려주는 것이다.
>>> list1=(1,5,-3,0,8,6)
>>> reversed(list1)
>>> for each in reversed(list1):
print(each,end=',')
6,8,0,-3,5,1,
(10)enumerate(): 이원조(이원조는 원소 수량이 2인 원조)로 구성된 교체 대상을 생성하고 각 이원조는 교체 가능한 매개 변수의 색인 번호와 대응하는 원소로 구성된다.
>>> str1='persistance'
>>> for each in enumerate(str1):
print(each)
(0, 'p')
(1, 'e')
(2, 'r')
(3, 's')
(4, 'i')
(5, 's')
(6, 't')
(7, 'a')
(8, 'n')
(9, 'c')
(10, 'e')
>>>
(11)zip(): 각 교체 가능한 매개 변수가 공동으로 구성된 원조를 되돌려줍니다.
>>> list1=[1,3,4,7,8]
>>> str1='lovej'
>>> tuple1=(2,3,4,5,6)
>>> for each in zip(list1,str1,tuple1):
print(each)
(1, 'l', 2)
(3, 'o', 3)
(4, 'v', 4)
(7, 'e', 5)
(8, 'j', 6)
2. lambda 표현식
2.1lambda 표현식 소개
>>> def un(x):
return 2*x+1
>>> un(10)
21
>>> g=lambda x:2*x+1
>>> g(10)
21
>>> g=lambda x,y:x*y
>>> g(4,5)
20
lambda 표현식의 기본 문법은 사칭 (:) 왼쪽에 원 함수의 매개 변수를 놓고 여러 개의 매개 변수를 사용할 수 있습니다.쉼표로 구분하면 된다.콜론 오른쪽은 반환값입니다.lambda 문장은 실제적으로 함수 대상을 되돌려줍니다. 사용하려면 간단한 값 부여 조작만 하면 됩니다.
2.2 BIF: Filter() 및 맵()
(1)filter () 이 내장 함수는 필터입니다.Filter에는 두 개의 매개 변수가 있습니다.만약 첫 번째 파라미터가 함수라면 두 번째 교체 가능한 데이터 중의 모든 요소를 함수의 파라미터로 계산하고 True로 되돌아오는 값을 선별한다.첫 번째 매개변수가 None이면 두 번째 매개변수의 True 값을 직접 필터링합니다.>>> a=list(filter(None,[1,0,False,True]))
>>>> a
[1, True]
>>> def odd(x):
return x%2 #% , 2 0, 2 1
>>> b=list(filter(odd,range(10)))
>>> b
[1, 3, 5, 7, 9]
>>> list(filter(lambda x:x%2,range(10)))
[1, 3, 5, 7, 9]
(2)map() 은 프로그래밍 분야에서 맵은 일반적으로'映射'으로 해석한다.맵에도 두 개의 매개 변수가 있는데, 여전히 교체 가능한 서열이다. 서열의 모든 원소를 함수의 매개 변수로 연산 가공하여 교체 가능한 서열의 모든 원소가 가공될 때까지 한다.>>> list(map(lambda x:x+2,range(10)))
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
3. 귀속
일반 함수 계층:nmu=int(input(' : '))
def abc(x):
b=x
for n in range(1,x): #1 x-1, x
b=b*n
return b
result=abc(nmu)
print('%d :%d'%(nmu,result))
귀속 계층으로nmu=int(input(' : '))
def abc(x):
if x==1:
return 1
else:
return x*abc(x-1)
result=abc(nmu)
print('%d :%d'%(nmu,result))
귀환의 두 가지 조건: (1) 호출 함수 자체(2) 정확한 귀환 조건을 설정했다.
>>> def un(x):
return 2*x+1
>>> un(10)
21
>>> g=lambda x:2*x+1
>>> g(10)
21
>>> g=lambda x,y:x*y
>>> g(4,5)
20
>>> a=list(filter(None,[1,0,False,True]))
>>>> a
[1, True]
>>> def odd(x):
return x%2 #% , 2 0, 2 1
>>> b=list(filter(odd,range(10)))
>>> b
[1, 3, 5, 7, 9]
>>> list(filter(lambda x:x%2,range(10)))
[1, 3, 5, 7, 9]
>>> list(map(lambda x:x+2,range(10)))
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
일반 함수 계층:
nmu=int(input(' : '))
def abc(x):
b=x
for n in range(1,x): #1 x-1, x
b=b*n
return b
result=abc(nmu)
print('%d :%d'%(nmu,result))
귀속 계층으로
nmu=int(input(' : '))
def abc(x):
if x==1:
return 1
else:
return x*abc(x-1)
result=abc(nmu)
print('%d :%d'%(nmu,result))
귀환의 두 가지 조건: (1) 호출 함수 자체(2) 정확한 귀환 조건을 설정했다.