관리-도구
편집 파일: fix_except.cpython-33.pyc
� ��f c @ s� d Z d d l m Z d d l m Z d d l m Z d d l m Z m Z m Z m Z m Z m Z d d � Z Gd d � d e j � Z d S( u� Fixer for except statements with named exceptions. The following cases will be converted: - "except E, T:" where T is a name: except E as T: - "except E, T:" where T is not a name, tuple or list: except E as t: T = t This is done because the target of an "except" clause must be a name. - "except E, T:" where T is a tuple or list literal: except E as t: T = t.args i ( u pytree( u token( u fixer_base( u Assignu Attru Nameu is_tupleu is_listu symsc c sb x[ t | � D]M \ } } | j t j k r | j d j d k rZ | | | d f VqZ q q Wd S( Ni u excepti ( u enumerateu typeu symsu except_clauseu childrenu value( u nodesu iu n( ( u= /opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_except.pyu find_excepts s u find_exceptsc B s, | Ee Z d Z d Z d Z d d � Z d S( u FixExceptu1 try_stmt< 'try' ':' (simple_stmt | suite) cleanup=(except_clause ':' (simple_stmt | suite))+ tail=(['except' ':' (simple_stmt | suite)] ['else' ':' (simple_stmt | suite)] ['finally' ':' (simple_stmt | suite)]) > c C s | j } d d � | d D� } d d � | d D� } x�t | � D]�\ } } t | j � d k rD | j d d � \ } } } | j t d d d �� | j t j k r�t | j � d d �} | j � } d | _ | j | � | j � } | j } x0 t | � D]"