python 노트 17
2.1 내용 회고
2.1.1 함수 (내장 / 사용자 정의)
def func(a1,a2):
pass
__init__.py
\ # py2 에 있어 야 합 니 다 __init__.py
는 -- init --. py 파일 의 내용 을 호출 합 니 다.2.1.3 기타
3. 오늘 의 내용
클래스 와 대상
3.1 교체 기
자 기 는 교체 기 를 쓸 줄 모 르 고 사용 만 합 니 다.
작업: 목록 의 모든 데 이 터 를 보 여 주세요.
__next__
방법 이 있 고 호출 할 때마다 교체 가능 한 대상 중의 요 소 를 가 져 옵 니 다 (이전 부터 다음 까지 하나씩 가 져 옵 니 다).v1 = [11,22,33,44].__iter__()
val = v1.__next__()
v1 = [11,22,33,44]
#
v2 = iter(v1)
result1 = v2.__next__()
print(result1)
result2 = v2.__next__()
print(result2)
result3 = v2.__next__()
print(result3)
result4 = v2.__next__()
print(result4)
result5 = v2.__next__()
print(result5)
"""
# v1 = "alex"
# v2 = iter(v1)
# while True:
# try:
# val = v2.__next__()
# print(val)
# except Exception as e:
# break
__next__
.v1 = [11,22,33,44]
# 1. v1
# 2. .__next__()
# 3.
for item in v1:
print(item)
__iter__()
방법 이 있 고 교체 기 를 되 돌려 줍 니 다.(*) v1 = [11,22,33,44]
result = v1.__iter__()
#
def func():
return 123
func()
# ( yield)
def func():
print('F1')
yield 1
print('F2')
yield 2
print('F3')
yield 100
print('F4')
# , 。
v1 = func()
# for , 。
for item in v1:
print(item)
def func():
count = 1
while True:
yield count
count += 1
val = func()
for item in val:
print(item)
요약: 함수 에 yield 가 존재 한다 면 이 함 수 는 생 성기 함수 입 니 다. 생 성기 함 수 를 호출 하면 생 성 기 를 되 돌려 줍 니 다. 생 성 기 는 for 순환 할 때 만 생 성기 함수 내부 의 코드 가 실 행 됩 니 다. 순환 할 때마다 yield 가 돌아 오 는 값 을 가 져 옵 니 다.for 순환 에 익숙 하지 않 습 니 다.
def func():
count = 1
while True:
yield count
count += 1
if count == 100:#
return
val = func()
for item in val:#item yield 。
print(item)
예제: 파일 읽 기 (아래 페이지 별로 파일 읽 기, 페이지 당 10 줄)
def func():
"""
, 。
:return:
"""
cursor = 0
while True:
f = open('db', 'r', encoding='utf-8')# redis
# redis[0:10]
f.seek(cursor)
data_list =[]
for i in range(10):
line = f.readline()
if not line:
return
data_list.append(line)
cursor = f.tell()
f.close() # redis
for row in data_list:
yield row
for item in func():
print(item)
기타 지식:
def func():
yield 1
yield 2
yield 3
v = func()
result = v.__next__()
print(result)
result = v.__next__()
print(result)
result = v.__next__()
print(result)
result = v.__next__()
print(result)
특수 한 교체 가능 대상: def func():
yield 1
v = func()
result = v.__iter__()
print(result)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.