печально быть антисоциальным - Post a comment

Nov. 27th, 2003

[info]smejmoon

08:40 pm - Par Python ģeneratoriem

Niekojoties ar parseriem, uzskrēju virsū ģeneratoriem:

def fib():
a, b = 0, 1
while 1:
yield b
a, b = b, a+b

sequence = fib()

for element in range(10):
print sequence.next()




Rezultāts:
1
1
2
3
5
8
13
21
34
55

No saucēja puses tas izskatās, kā forward iterators, no f-jas puses tas izskatās, kā callback mehānisms.

Labāki par listu apstrādēm ir tapēc, ka aizņem mazāk atmiņas, jo funkcija tiek saukta katrai vērtībai atsevišķi, kā arī iespējams rakstīt vienkāršāku kodu.

Iespējamie pielietojumi: teksta apstrāde parsējot, db ierakstu apstrāde tos nolasot.

PEP 225: Simple Generators

Read Comments

Reply:

From:
( )Anonymous- this user has disabled anonymous posting.
Username:
Password:
Subject:
No HTML allowed in subject
  
Message:

Notice! This user has turned on the option that logs your IP address when posting.