MINI MINI MANI MO
3
\ @ sR d Z ddlmZ ddlmZ ddlmZ ddlm Z m
Z
mZ G dd dejZ
dS ) a7
Fixer that changes zip(seq0, seq1, ...) into list(zip(seq0, seq1, ...)
unless there exists a 'from future_builtins import zip' statement in the
top-level namespace.
We avoid the transformation if the zip() call is directly contained in
iter(<>), list(<>), tuple(<>), sorted(<>), ...join(<>), or for V in <>:.
)
fixer_base)Node)python_symbols)NameArgListin_special_contextc @ s e Zd ZdZdZdZdd ZdS )FixZipTzN
power< 'zip' args=trailer< '(' [any] ')' > [trailers=trailer*]
>
zfuture_builtins.zipc C s | j |rd S t|rd S |d j }d|_g }d|kr^dd |d D }x|D ]
}d|_qPW ttjtd|gdd}ttjtdt|gg| }|j|_|S ) Nargs trailersc S s g | ]}|j qS )clone).0nr r -/usr/lib64/python3.6/lib2to3/fixes/fix_zip.py
<listcomp>' s z$FixZip.transform.<locals>.<listcomp>zip)prefixlist) Zshould_skipr r
r r symsZpowerr r )selfZnodeZresultsr r r newr r r transform s
zFixZip.transformN)__name__
__module____qualname__Z
BM_compatibleZPATTERNZskip_onr r r r r r s r N)__doc__r
r Zpytreer Zpygramr r Z
fixer_utilr r r ZConditionalFixr r r r r <module> s
OHA YOOOO