>  기사  >  백엔드 개발  >  Python 특수 구문

Python 특수 구문

高洛峰
高洛峰원래의
2016-10-19 13:32:121598검색

Python에는 Python과 관련된 몇 가지 특수 기능이 내장되어 있습니다. 코드를 더 간결하게 만들 수 있습니다.

예제를 볼 수 있습니다:

1개의 필터(함수, 시퀀스):

str = ['a', 'b', 'c', 'd' ]

def fun1(s): return s if s != 'a' else None

ret = filter(fun1, str)

print ret

## ['b', 'c', 'd']

순서대로 항목에 대해 함수(항목)를 실행하고 실행 결과는 다음과 같은 List/String/Tuple을 구성합니다. True(시퀀스 유형에 따라 다름)가 반환됩니다.

은 필터 기능이라고 볼 수 있습니다.

2 맵(함수, 시퀀스)

str = ['a', 'b','c', 'd']

def fun2(s): return s + ".txt"

ret = map(fun2, str)

ret 인쇄

## ['a.txt', 'b.txt', 'c.txt', 'd.txt']

순서대로 항목에 대해 함수(항목)를 실행하고 실행 결과를 목록으로 확인하여 반환합니다.

Map 또한 여러 시퀀스를 지원합니다. 이를 위해서는 함수가 해당 개수의 매개변수 입력도 지원해야 합니다.

def add(x, y): return x+y

print map(add, range( 10), 범위(10 ))

##[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

3 축소(함수, 시퀀스, 시작_값): def add1( x,y): x + y 반환

print Reduce(add1, range(1, 100))

print Reduce(add1, range(1, 100) , 20)

## 4950(참고: 1+2+...+99)

## 4970(참고: 1+2+...+99+20)

예 시퀀스의 항목은 함수를 반복적으로 호출합니다. 시작 값이 있으면 초기 값으로 호출할 수도 있습니다. 예를 들어

4 람다:

g = 람다 s: s + ".fsh"

인쇄 g("하하")

인쇄(람다 x: x * 2) (3 )

## haha.fsh

## 6

이것은 Python에서 지원하는 흥미로운 구문으로, 다음과 유사한 한 줄 최소 함수를 빠르게 정의할 수 있습니다. C 언어에서는 매크로를 람다라고 합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.