Edit File: csv.cpython-37.opt-2.pyc
B ����0��c4?������������������@���sH��d�dl�Z�d�dlmZmZmZmZmZmZmZm Z m Z mZmZm Z mZmZ�d�dlmZ�d�dlmZ�d�dlmZ�dddd d ddd dddddddddddddgZG�dd��d�ZG�dd ��d e�Zed e��G�dd��de�Zede��G�dd��de�Zed e��G�d!d��d�ZG�d"d��d�Zye�W�n�ek �r4���eZY�nX�G�d#d��d�ZdS�)$�����N)�Error�__version__�writer�reader�register_dialect�unregister_dialect�get_dialect� list_dialects�field_size_limit� QUOTE_MINIMAL� QUOTE_ALL�QUOTE_NONNUMERIC� QUOTE_NONE�__doc__)�Dialect)�OrderedDict)�StringIOr���r���r ���r���r���r���r����excel� excel_tabr ���r���r���r���r���r ����Snifferr���r���� DictReader� DictWriter�unix_dialectc���������������@���s@���e�Zd�ZdZdZdZdZdZdZdZ dZ dZdd��Zdd��Z dS�)r�����FNc�������������C���s���|�j�tkrd|�_|�����d�S�)NT)� __class__r����_valid� _validate)�self��r����(/opt/alt/python37/lib64/python3.7/csv.py�__init__+���s���� zDialect.__init__c���������� ���C���s@���yt�|���W�n.�tk r:�}�ztt|���W�d�d�}~X�Y�nX�d�S�)N)�_Dialect� TypeErrorr����str)r����er���r���r���r���0���s����zDialect._validate)�__name__� __module__�__qualname__�_namer���� delimiter� quotecharZ escapechar�doublequote�skipinitialspace�lineterminator�quotingr ���r���r���r���r���r���r������s���c���������������@���s$���e�Zd�ZdZdZdZdZdZeZ dS�)r����,�"TFz N) r%���r&���r'���r)���r*���r+���r,���r-���r���r.���r���r���r���r���r���7���s���c���������������@���s���e�Zd�ZdZdS�)r���� N)r%���r&���r'���r)���r���r���r���r���r���A���s���z excel-tabc���������������@���s$���e�Zd�ZdZdZdZdZdZeZ dS�)r���r/���r0���TF� N) r%���r&���r'���r)���r*���r+���r,���r-���r���r.���r���r���r���r���r���F���s���Zunixc���������������@���s@���e�Zd�Zddd�Zdd��Zedd���Zejd d���Zd d��ZdS�) r���Nr���c�������������O���s6���||�_�||�_||�_t||f|�|�|�_||�_d|�_d�S�)Nr���)�_fieldnames�restkey�restvalr����dialect�line_num)r����f� fieldnamesr4���r5���r6����args�kwdsr���r���r���r ���R���s����zDictReader.__init__c�������������C���s���|�S�)Nr���)r���r���r���r����__iter__[���s����zDictReader.__iter__c�������������C���s@���|�j�d�kr0yt|�j�|�_�W�n�tk r.���Y�nX�|�jj|�_|�j�S�)N)r3����nextr���� StopIterationr7���)r���r���r���r���r9���^���s���� zDictReader.fieldnamesc�������������C���s ���||�_�d�S�)N)r3���)r����valuer���r���r���r9���h���s����c�������������C���s����|�j�dkr|�j�t|�j�}|�jj�|�_�x|g�kr:t|�j�}q&W�tt|�j|��}t|�j�}t|�}||k�rz||d���||�j<�n*||kr�x |�j|d���D�]}|�j||<�q�W�|S�)Nr���) r7���r9���r=���r���r����zip�lenr4���r5���)r����row�dZlfZlr�keyr���r���r����__next__l���s���� zDictReader.__next__)NNNr���) r%���r&���r'���r ���r<����propertyr9����setterrE���r���r���r���r���r���Q���s���� c���������������@���s6���e�Zd�Zddd�Zdd��Zdd ��Zd d��Zdd ��ZdS�)r���r����raiser���c�������������O���sB���||�_�||�_|���dkr$td|���||�_t||f|�|�|�_d�S�)N)rH����ignorez-extrasaction (%s) must be 'raise' or 'ignore')r9���r5����lower� ValueError�extrasactionr���)r���r8���r9���r5���rL���r6���r:���r;���r���r���r���r �������s����zDictWriter.__init__c�������������C���s ���t�t|�j|�j��}|��|��d�S�)N)�dictr@���r9����writerow)r����headerr���r���r����writeheader����s����zDictWriter.writeheaderc����������������sN����j�dkr8������j�}|r8tdd�dd��|D���������fdd��jD��S�)NrH���z(dict contains fields not in fieldnames: z, c�������������S���s���g�|�]}t�|��qS�r���)�repr)�.0�xr���r���r���� <listcomp>����s����z,DictWriter._dict_to_list.<locals>.<listcomp>c�������������3���s���|�]}����|�j�V��qd�S�)N)�getr5���)rR���rD���)�rowdictr���r���r���� <genexpr>����s����z+DictWriter._dict_to_list.<locals>.<genexpr>)rL����keysr9���rK����join)r���rV���Zwrong_fieldsr���)rV���r���r���� _dict_to_list����s���� zDictWriter._dict_to_listc�������������C���s���|�j��|��|��S�)N)r���rN���rZ���)r���rV���r���r���r���rN�������s����zDictWriter.writerowc�������������C���s���|�j��t|�j|��S�)N)r���� writerows�maprZ���)r���Zrowdictsr���r���r���r[�������s����zDictWriter.writerowsN)r���rH���r���)r%���r&���r'���r ���rP���rZ���rN���r[���r���r���r���r���r�������s���� c���������������@���s6���e�Zd�Zdd��Zddd�Zdd��Zdd ��Zd d��ZdS�) r���c�������������C���s���dddddg|�_�d�S�)Nr/���r1����;� �:)� preferred)r���r���r���r���r �������s����zSniffer.__init__Nc�������������C���sd���|���||�\}}}}|s(|��||�\}}|s4td��G�dd��dt�}||_||_|pVd|_||_|S�)NzCould not determine delimiterc���������������@���s���e�Zd�ZdZdZeZdS�)zSniffer.sniff.<locals>.dialectZsniffedz N)r%���r&���r'���r(���r-���r���r.���r���r���r���r���r6�������s���r6���r0���)�_guess_quote_and_delimiter�_guess_delimiterr���r���r+���r)���r*���r,���)r����sample� delimitersr*���r+���r)���r,���r6���r���r���r����sniff����s���� z Sniffer.sniffc���������� ���C���s���g�}x0dD�](}t��|t�jt�jB��}|�|�}|r P�q W�|s>dS�i�}i�}d}|j} x�|D�]�} | d�d�}| |�}|r�|�|d�d�||<�y| d�d�}| |�}W�n�tk r����wVY�nX�|r�|d�ks�||kr�|�|d�d�||<�y| d�d�}W�n�tk �r���wVY�nX�| |�rV|d7�}qVW�t||jd�} |�rZt||jd�}||�|k}|d k�rbd }nd }d}t��dt�� |�| d��t�j�}|� |��r�d }nd}| |||fS�)N)zI(?P<delim>[^\w\n"\'])(?P<space> ?)(?P<quote>["\']).*?(?P=quote)(?P=delim)zG(?:^|\n)(?P<quote>["\']).*?(?P=quote)(?P<delim>[^\w\n"\'])(?P<space> ?)zG(?P<delim>[^\w\n"\'])(?P<space> ?)(?P<quote>["\']).*?(?P=quote)(?:$|\n)z-(?:^|\n)(?P<quote>["\']).*?(?P=quote)(?:$|\n))r���FNr���r����quote�����delimZspace)rD���r2���r���z]((%(delim)s)|^)\W*%(quote)s[^%(delim)s\n]*%(quote)s[^%(delim)s\n]*%(quote)s\W*((%(delim)s)|$))rh���rf���TF)�re�compile�DOTALL� MULTILINE�findall� groupindexrU����KeyError�max�escape�search)r����datard����matchesZrestrZregexpZquotes�delimsZspacesrn����m�nrD���r*���rh���r,���Z dq_regexpr+���r���r���r���ra�������sZ���� z"Sniffer._guess_quote_and_delimiterc�������������C���s��t�td�|�d���}dd��td�D��}tdt|��}d}i�}i�}i�}d|�} } �x| t|�k��rj|d7�}xT|| | ��D�]D}x>|D�]6}|�|i��} |�|�}| �|d�d�| |<�| ||<�q�W�qvW�x�|���D�]�}t�||�� ���}t|�dkr�|d�d�dkr�q�t|�dk�rZt |dd ��d �||<�|�||���||�d�||�d�tdd��|D����f||<�q�|d�||<�q�W�|� ��}t t||�t|���}d }d}x�t|�dk�r||k�rx\|D�]T\}}|d�dk�r�|d�dk�r�|d�|�|k�r�|d�k�s�||k�r�|||<��q�W�|d8�}�q�W�t|�dk�r\t�|����d�}|d��|�|d��d|��k}||fS�| } | |7�} qRW�|�svdS�t|�dk�r�xF|�jD�]<}||���k�r�|d��|�|d��d|��k}||fS��q�W�dd��|� ��D��}|����|d�d�}|d��|�|d��d|��k}||fS�)Nr2���c�������������S���s���g�|�]}t�|��qS�r���)�chr)rR����cr���r���r���rT���.��s����z,Sniffer._guess_delimiter.<locals>.<listcomp>����� ���r���rg���c�������������S���s���|�d�S�)Nrg���r���)rS���r���r���r����<lambda>H�������z*Sniffer._guess_delimiter.<locals>.<lambda>)rD���c�������������s���s���|�]}|d��V��qdS�)rg���Nr���)rR����itemr���r���r���rW���M��s����z+Sniffer._guess_delimiter.<locals>.<genexpr>g�������?g�������?g{�G�z�?z%c )r���r���c�������������S���s���g�|�]\}}||f�qS�r���r���)rR����k�vr���r���r���rT���w��s�������)�list�filter�split�range�minrA���rU����countrX����itemsrp����remove�sum�floatr`����sort)r���rs���rd����asciiZchunkLengthZ iterationZ charFrequencyZmodesru����start�end�line�charZ metaFrequencyZfreqr����ZmodeListZtotalZconsistencyZ thresholdr���r����rh���r,���rC���r���r���r���rb�����st���� zSniffer._guess_delimiterc������� ������C���s���t�t|�|��|��}t|�}t|�}i�}xt|�D�]}d�||<�q2W�d}x�|D�]�}|dkrZP�|d7�}t|�|krpqLx�t|����D�]x} xJtt t gD�]0} y| || ���P�W�q��ttfk r����Y�q�X�q�W�t|| ��} | || �kr~|| �d�kr�| || <�q~|| =�q~W�qLW�d}x�|� ��D�]~\} }t|�td�k�rLt|| ��|k�rB|d7�}n|d8�}n<y||| ���W�n"�ttfk �r~���|d7�}Y�n X�|d8�}�qW�|dkS�)Nr�������rg���)r���r���re���r=���rA���r����r����rX����intr�����complexrK���� OverflowErrorr�����typer"���) r���rc���ZrdrrO����columnsZcolumnTypes�i�checkedrB����colZthisTypeZ hasHeaderZcolTyper���r���r���� has_header���sJ���� � zSniffer.has_header)N)r%���r&���r'���r ���re���ra���rb���r����r���r���r���r���r�������s ��� Lg) ri���Z_csvr���r���r���r���r���r���r���r ���r ���r���r���r ���r���r���r���r!����collectionsr����ior����__all__r���r���r���r���r���r����� NameErrorr����r���r���r���r���r����<module>���s0���@ 2