рдЕрдм рдХрдИ рд╡рд░реНрд╖реЛрдВ рд╕реЗ, рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИред рдпрд╣, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдЕрдкрдиреА рдкреБрд░рд╛рдиреА рднрд╛рд╖рд╛рдУрдВ рдФрд░ рдУрдУрдкреА рдХреЛ рдЫреЛрдбрд╝ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рд╣рд╛рд╕реНрдХреЗрд▓, рд▓рд┐рд╕реНрдк рдпрд╛ рдПрд░рд▓рдВрдЧ рдкрд░ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╣реИрдВред рдирд╣реАрдВред рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░рддрд┐рдорд╛рди рдмрд╣реБ-рдкреНрд░рддрд┐рдорд╛рди рднрд╛рд╖рд╛рдУрдВ рдХреА рдЦрд╛рдорд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рдорд╛рд░реЗ рдХреЛрдб рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЙрдкрд░реНрдпреБрдХреНрдд рднрд╛рд╖рд╛рдПрдВ рдЕрдХреНрд╕рд░ рдЗрд╕ рдЖрдХреНрд░рд╛рдордХ рдореЗрдВ рдЭрдВрдбреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрд╡рд╛ рдХрд░рддреА рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдореИрдВ рдПрдХ рд╣реА рдирд╕ рдореЗрдВ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдЬрд╛ рд░рд╣рд╛ рдерд╛ рдФрд░ рд▓реЗрдЦ рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ
рдореЗрд░реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдЕрдЬрдЧрд░ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЪрд╛рд▓ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рдЬреЛрдбрд╝ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореЗрд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдзреНрдпрд╛рди рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкрд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрддрд╛ рдкрд░ рд╣реИред рдореИрдВ рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реВрдВрдЧрд╛, рдореИрдВ рдлрдиреНрдиреА рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рдХрдИ рдЬреАрд╡рди рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛ред
рдбреЗрдЯрд╛ рдХрд╛ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦрдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд╕рд╛рде, рдлрд╝рдиреНрд╕реА рдХрд╛ рд╡рд┐рдХрд╛рд╕ рд╢реБрд░реВ рд╣реБрдЖ рдФрд░, рдХрдо рд╕рд╛рдорд╛рдиреНрдпрддрдГ, рдлрд╝рдВрдХреНрд╢рди, рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрджрд╛рд╣рд░рдг рдЙрд╕ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗред рдХреБрдЫ (рдпрд╛ рдХрдИ) рдЙрджрд╛рд╣рд░рдг рддреБрдЪреНрдЫ рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╣реИ рдХрд┐ рдРрд╕реЗ рд╕рд░рд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд┐рддрдирд╛ рд╕рдордп рдмрдЪрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╡реЗ рдЖрдкрдХреЗ рдХреЛрдб рдХреЛ рдХрд┐рддрдирд╛ рдЕрдзрд┐рдХ рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдХрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдЬрд╛рдКрдВрдЧрд╛, рдЬреЛ рдкрд╛рдЗрдереЛрдирд┐рдХ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рдкрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреА рд╕рд░рд▓рддрд╛ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдирд┐рд░рдВрддрд░ рдкреНрд░рд╢реНрди рдЙрдард╛рддреЗ рд╣реИрдВред рддреЛ рдЪрд▓рд┐рдП рдЪрд▓рддреЗ рд╣реИрдВред
рд╕рд░рд▓ рдбреЗрдЯрд╛ рд╣реЗрд░рдлреЗрд░
1. рд╕реВрдЪрд┐рдпреЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рдорд┐рд▓рд╛рдПрдВред рдкрд░рдВрдкрд░рд╛рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛:
from operator import concat reduce(concat, list_of_lists)
рдЙрдирдореЗрдВ рд╕реЗ рд╕рднреА рдЦрд░рд╛рдм рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЗрдВ рдпрд╛ рддреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЗрд╢рд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ: рдЖрдпрд╛рдд рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЙрд▓, рдпрд╛ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рддреЗ рд╣реИрдВ: рдХреЗрд╡рд▓ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕реВрдЪрд┐рдпреЛрдВ рдФрд░ рдЯреНрдпреВрдкрд▓реНрд╕ рдХреЗ рд╕рд╛рде tuples рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд░рд╛рд╢рд┐ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрднреА рднреА рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдЬрд╛рдирдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреМрди рд╕рд╛ рдкреНрд░рдХрд╛рд░ рдЖрдПрдЧрд╛ред рдЕрдВрддреНрдпреЗрд╖реНрдЯрд┐ рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
from funcy import cat cat(list_of_lists)
cat()
рд╕реВрдЪрд┐рдпреЛрдВ, рдЯреБрдкрд▓реНрд╕, рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рдЬреЛрдбрд╝рддреА рд╣реИ, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рднреА рдПрдХ рд╕реВрдЪреА рдореЗрдВ рдкреБрдирд░рд╛рд╡реГрддреНрддред рдпрджрд┐ рдЖрдкрдХреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреА рдкрд░рд┐рдгрд╛рдо рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
mapcat()
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
from funcy import mapcat mapcat(str.splitlines, bunch_of_texts)
рдПрдХ рдлреНрд▓реИрдЯ рд╕реВрдЪреА рдореЗрдВ рдЧреНрд░рдВрдереЛрдВ рдореЗрдВ рд╕рднреА рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░реЗрдЧрд╛ред рджреЛрдиреЛрдВ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд▓рд╕реА рд╕рдВрд╕реНрдХрд░рдг рд╣реИрдВ:
icat()
рдФрд░
imapcat()
ред
2. рдХрдИ рд╢рдмреНрджрдХреЛрд╢ рдЬреЛрдбрд╝реЗрдВред рдЕрдЬрдЧрд░ рдореЗрдВ рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрдИ рдЕрдЬреАрдм рддрд░реАрдХреЗ рд╣реИрдВ:
d1.update(d2)
рдореИрдВ рд╣рдореЗрд╢рд╛ рд╕реЛрдЪрддрд╛ рдерд╛ рдХрд┐ рд╡реЗ рд╕рд┐рд░реНрдл рдореБрдбрд╝реЗ рд╣реБрдП рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ? рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣реИред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
from funcy import merge, join merge(d1, d2) merge(d1, d2, d3) join(sequence_of_dicts)
рд▓реЗрдХрд┐рди
merge()
рдФрд░
join()
рди рдХреЗрд╡рд▓ рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд╡реЗ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ: рд╢рдмреНрджрдХреЛрд╢, рд╢рдмреНрджрдХреЛрд╢, рд╕реЗрдЯ, рд╕реВрдЪрд┐рдпрд╛рдВ, рдЯреНрдпреВрдкрд▓, рдкреБрдирд░рд╛рд╡реГрддреНрдд, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рддрд╛рд░ред
3. рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреИрдкреНрдЪрд░ рдХрд░рдирд╛ред рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рддрд░рд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
m = re.search(some_re, s) if m: actual_match = m.group()
рдорд╕реНрддреА рдХреЗ рд╕рд╛рде, рдпрд╣ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ:
from funcy import re_find actual_match = re_find(some_re, s)
рдпрджрд┐ рдпрд╣ рдЖрдкрдХреЛ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рддреЛ рдЗрд╕ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:
from funcy import re_finder, re_all, partial, mapcat
рдЖрдпрд╛рдд рдФрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╛рдЪрди
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реЛрдЧрд╛, рдореИрдВ рдХрд┐рд╕реА рднреА рдЙрдк-рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, рдлрд╝рдВрд╕реА рд╕реЗ рд╕реАрдзреЗ рдлрд╝рдВрдХреНрд╢рди рдЖрдпрд╛рдд рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░ рдореИрдВрдиреЗ рдЬреЛ рдХрд╛рд░рдг рддрдп рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрддрд╛ рд╣реИ; рдореЗрд░реЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдмрд╛рдК рд╣реЛрдирд╛ рдЙрдмрд╛рдК рд╣реЛрдЧрд╛ рдХрд┐ рд╡реЗ рдлрд╝реНрд░реАрд╕реА.рдХреЛрд▓реНрд╕ рдпрд╛ рдлрд╝рдВрд╕реА.рд╕реЗрдХ рд╕реЗ рдХрд╣рд╛рдБ рдЖрдпрд╛рдд рдХрд░реЗрдВ (рдпрд╣ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рдЖрдпрд╛рдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдореЗрд░реЗ рдмрд┐рдирд╛ рдХреЛрдИ рд╕рд╛рдорд╛рди рд╣реИред
рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдн рдХреЗрд╡рд▓ рд▓рд┐рдЦрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ:
from funcy import *
рдФрд░ рд╕рднреА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЖрдХрд░реНрд╖рдг рдФрд░ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЖрдирдВрдж рд▓реЗрдВ рдЬреЛ рдХрд┐ рдЖрдирдВрдж рд▓рд╛рддрд╛ рд╣реИ, рдЕрдм рдФрд░ рдЕрдзрд┐рдХ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рдЦреИрд░, рдЕрдм рдЬрдм рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдЕрдЪреНрдЫреЗ рдЭреВрда рдХрд╣рд╛рдВ рд╣реИрдВ, рддреЛ рдореИрдВ рдЕрдм рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд╛рд░ рд╕реЗ рдЖрдпрд╛рдд рдХрд╛ рд╕рдВрдХреЗрдд рдирд╣реАрдВ рджреВрдВрдЧрд╛ред рдЪрд▓рд┐рдП рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред
рдХреБрдЫ рдФрд░ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдмрд╛рддреЗрдВ
рд╣рдордиреЗ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдкрд╣рд▓реЗ рд╣реА рджреЗрдЦ рд▓рд┐рдП рд╣реИрдВ -
re_finder()
рдФрд░
partial()
ред рдпрд╣ рдЬреЛрдбрд╝рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐
re_finder()
рдлрд╝рдВрдХреНрд╢рди рд╕реНрд╡рдпрдВ рдПрдХ рдЖрдВрд╢рд┐рдХ
re_find()
рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИ рдЬреЛ
map()
рдореЗрдВ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ
map()
рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдФрд░ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ,
filter()
рд╕рд╛рде
filter()
рдпрд╣
re_tester()
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ:
рдорд╣рд╛рди, рд╣рдо рдХреБрдЫ рд╡рд┐рдзреЗрдпрдХреЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐
is_private()
, рдФрд░ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВ:
is_special = re_tester('^__.+__$') is_const = re_tester('^[A-Z_]+$') filter(...)
рд▓реЗрдХрд┐рди, рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдо рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдпрд╛ рдирд┐рдЬреА рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдХреБрдЫ рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рдзреЗрдп рдХрд╛ рд╕рдВрдпреЛрдЬрди рд╢рд╛рдорд┐рд▓ рд╣реИ? рдЖрд╕рд╛рди:
is_public = complement(is_private) is_private_const = all_fn(is_private, is_const) either_const_or_public = any_fn(is_const, is_public)
рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдПрдХ рдлрд╝рдВрдХреНрд╢рди рднреА рд╣реИ рдЬреЛ
filter()
рдкреВрд░рдХ
filter()
:
remove(is_private, ...)
рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рд╕рднреА рдиреЗ рдЕрдкрдиреА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рднреВрдЦ рдХреЛ рдмреБрдЭрд╛ рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреБрдЫ рдХрдо рд╕рд╛рд░ рдкрд░ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред
рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ
рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛,
рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрдИ рдХрд╛ рд╡рд░реНрдгрди рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдХрд┐рдпрд╛ рд╣реИ, рдлрд╝рдВрд╕реАрдХрд░рдг рднреА рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдЖрдзрд╛рд░ рдлрд╝рдВрдХреНрд╢рдВрд╕
walk()
рдФрд░
select()
, рдЬреЛ
map()
рдФрд░
filter()
, рд▓реЗрдХрд┐рди рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдП рд░рдЦреЗрдВ:
walk(inc, {1, 2, 3})
рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреА рдпрд╣ рдЬреЛрдбрд╝реА рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗрдЯ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ:
walk_keys(), walk_values(), select_keys(), select_values()
:
рдЗрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рдЙрджрд╛рд╣рд░рдг рдПрдХ рдмрд╛рд░ рдореЗрдВ рдХрдИ рдирдП рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛:
silent()
- рд▓рд┐рдкрдЯреЗ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдлреЗрдВрдХреЗ рдЧрдП рд╕рднреА рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рджрдмрд╛ рджреЗрддрд╛ рд╣реИ,
None
рд╡рд╛рдкрд╕
None
;
compact()
- рд╕рдВрдЧреНрд░рд╣ рд╕реЗ
None
рдореВрд▓реНрдп
None
рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ;
walk_values()
- рдкрд╛рд░рд┐рдд рд╢рдмреНрджрдХреЛрд╢ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ
walk_values()
рдХрд░рддреЗ рд╣реИрдВ, рдкрд╛рд░рд┐рдд рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╢рдмреНрджрдХреЛрд╢ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рд░реЗрдЦрд╛ рдХреНрд╡реЗрд░реА рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╢рдмреНрджрдХреЛрд╢ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ:
compact(walk_values(silent(int), request_dict))
рдбреЗрдЯрд╛ рд╣реЗрд░рдлреЗрд░
рдУрд╣! рд╣рдореЗрдВ рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд╣рд┐рд╕реНрд╕рд╛ рдорд┐рд▓рд╛ред рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдЗрд╕рд▓рд┐рдП рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдореБрдЭреЗ рдЕрдЪреНрдЫреЗ рд▓рдЧрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЗрд╕реЗ рдКрдкрд░ рдХрд┐рдпрд╛ред рдЕрдм рд╣рдо рдмрд╛рдВрдЯреЗрдВрдЧреЗ рдФрд░ рд╕рдореВрд╣ рдмрдирд╛рдПрдВрдЧреЗ:
рдиреЗрд╕реНрдЯреЗрдб рд╕рдВрд░рдЪрдирд╛рдУрдВ рдореЗрдВ рдлреНрд▓реИрдЯ рдбреЗрдЯрд╛ рд▓реЗ рд▓реАрдЬрд┐рдП:
рдФрд░ рдХреБрдЫ рдФрд░ рдЙрджрд╛рд╣рд░рдг, рд╕рд┐рд░реНрдл рдвреЗрд░ рдХреЗ рд▓рд┐рдП:
рд╕рд┐рд░реНрдл рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдирд╣реАрдВ рд╣реИ
рд╢рд╛рдпрдж рдЖрдк рдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреНрд▓реЛрдЬрд░ рдФрд░ рдЕрдВрдбрд░рд╕реНрдХреЛрд░.рдЬреЗрдПрд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ (рд╡реИрд╕реЗ, рд╢реЗрдХреНрд╕рдкрд┐рдпрд░ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рдХреЗ рдкреНрд░рд▓реЗрдЦрди рд╕реЗ рдлрдЯ рдЧрдпрд╛ рд╣реИ) - рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ, рдореИрдВрдиреЗ рдЗрди рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдмрд╣реБрдд рдкреНрд░реЗрд░рдгрд╛ рд▓реАред рдЙрд╕реА рд╕рдордп, рдореИрдВрдиреЗ рдкрд╛рдпрдерди рд╢реИрд▓реА рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рд╕реНрдерд┐рд░рддрд╛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХрд╣реАрдВ рднреА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрддрд╛ рдХрд╛ рдмрд▓рд┐рджрд╛рди рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕рд▓рд┐рдП рд╕рднреА рдлрд╝рдВрдХреНрд╢рди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдирдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рд╡реЗ рдПрдХ-рджреВрд╕рд░реЗ рдФрд░ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВред
рдФрд░ рдПрдХ рдФрд░ рд╕реЛрдЪрд╛ред рд╣рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рд╢рд╛рдпрдж рд╣реА рдХрднреА рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдФрд░ рдорд╛рдирдХ рдХрд╛рд░реНрдп рдЗрди рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╢рдмреНрдж рд╣реИрдВред рд╣рдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдХреЗ рдЕрдкрдиреЗ рд╢рдмреНрджреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдорддреМрд░ рдкрд░ рдРрд╕реЗ рд╢рдмреНрдж рд░реЛрдЬрдорд░реНрд░рд╛ рдХреА рднрд╛рд╖рд╛ рдХреЗ рд╢рдмреНрджрдХреЛрд╢ рдореЗрдВ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЕрдВрддреНрдпреЗрд╖реНрдЯрд┐ рд╕реЗ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ, рдЖрд╡реЗрджрдиреЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдЕрдЬрдЧрд░ рд╡рд┐рд╕реНрддрд╛рд░, рд╕рд╛рде рд╣реА рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдпрд╛ jQuery - рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рд░ рдХреЛрдИ рдЬреЛ рдЕрдкрдиреА рд╢рдмреНрджрд╛рд╡рд▓реА рдХреЛ рдлрд┐рд░ рд╕реЗ рднрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ,
рдЙрд╕рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ ред