반응형
파이썬 3의 수율 생성기에는 next() 함수가 없습니다.
이 질문에서 저는 파이썬 생성기를 사용한 무한 시퀀스를 가지고 있습니다.하지만 파이썬 3에서는 동일한 코드가 작동하지 않습니다. 왜냐하면 그것은 없는 것 같기 때문입니다.next()기능.에 해당하는 것은 무엇입니까?next기능?
def updown(n):
while True:
for i in range(n):
yield i
for i in range(n - 2, 0, -1):
yield i
uptofive = updown(6)
for i in range(20):
print(uptofive.next())
Python 3에서는 다음을 사용합니다.next(uptofive)대신에uptofive.next().
빌트인next()기능은 Python 2.6 이상에서도 작동합니다.
Python 3에서, 구문을 더 일관되게 만들기 위해,next()메서드의 이름이 다음으로 변경되었습니다.__next__()당신은 그것을 사용할 수 있습니다.이는 PEP 3114에 설명되어 있습니다.
Greg의 솔루션을 따라 기본 제공 함수 호출(그 후 개체의 검색을 시도함)__next__()방법)이 권장됩니다.
언급URL : https://stackoverflow.com/questions/12274606/theres-no-next-function-in-a-yield-generator-in-python-3
반응형
'programing' 카테고리의 다른 글
| postgres에서 중복 어레이 값 제거 (0) | 2023.05.04 |
|---|---|
| bash 셸 스크립트에 파일을 포함하는 방법 (0) | 2023.05.04 |
| mongodb를 업그레이드해도 효과가 없으며 이전 버전이 계속 표시됩니다. (0) | 2023.05.04 |
| "최적의 성능을 위해 저장소 자동 패킹"은 무엇을 의미합니까? (0) | 2023.05.04 |
| 공통 코드를 git 하위 모듈로 추가하는 데 문제가 발생했습니다. "인덱스에 이미 있습니다." (0) | 2023.05.04 |