Current File : //usr/lib/python3.6/site-packages/__pycache__/prettytable.cpython-36.pyc
3

F�`Q���@s`dZddlZddlZddlZddlZddlZddlZddlZddlZej	ddkZ
e
rxeZeZ
eZeZeZddlmZnejZejZeZddlmZe
r�ej	ddkr�ddlmZnddlmZdZdZdZdZdZ d	Z!d
Z"dZ#ej$d�Z%d
d�Z&Gdd�de'�Z(dd�Z)dd�Z*d"dd�Z+dd�Z,Gdd�de�Z-dd�Z.dd�Z/dd �Z0e1d!k�r\e0�dS)#z0.7.2�N�)�
HTMLParser��)�escape�
���z\[[0-9;]*mcCs,|jd�}t|�}tdd�|D��}||fS)N�
cSsg|]}t|��qS�)�_str_block_width)�.0�linerr�!/usr/lib/python3.6/prettytable.py�
<listcomp>Osz_get_size.<locals>.<listcomp>)�split�len�max)�text�linesZheight�widthrrr�	_get_sizeLs
rc@sBeZdZd�dd�Zdd�Zdd�Zdd	�Zd
d�Zer@dd
�Z	ndd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zeee�Zd5d6�Zd7d8�Z eee �Z!d9d:�Z"d;d<�Z#ee"e#�Z$d=d>�Z%d?d@�Z&ee%e&�Z'dAdB�Z(dCdD�Z)ee(e)�Z*dEdF�Z+dGdH�Z,ee+e,�Z-dIdJ�Z.dKdL�Z/ee.e/�Z0dMdN�Z1dOdP�Z2ee1e2�Z3dQdR�Z4dSdT�Z5ee4e5�Z6dUdV�Z7dWdX�Z8ee7e8�Z9dYdZ�Z:d[d\�Z;ee:e;�Z<d]d^�Z=d_d`�Z>ee=e>�Z?dadb�Z@dcdd�ZAee@eA�ZBdedf�ZCdgdh�ZDeeCeD�ZEdidj�ZFdkdl�ZGeeFeG�ZHdmdn�ZIdodp�ZJeeIeJ�ZKdqdr�ZLdsdt�ZMeeLeM�ZNdudv�ZOdwdx�ZPeeOeP�ZQdydz�ZRd{d|�ZSeeReS�ZTd}d~�ZUdd��ZVeeUeV�ZWd�d��ZXd�d��ZYeeXeY�ZZd�d��Z[d�d��Z\ee[e\�Z]d�d��Z^d�d��Z_ee^e_�Z`d�d��Zad�d��Zbeeaeb�Zcd�d��Zdd�d��Zeeedee�Zfd�d��Zgd�d��Zheegeh�Zid�d��Zjd�d��Zkd�d��Zld�d��Zmd�d��Znd�d��Zod�d��Zpd�d��Zqd�d�d��Zrd�d��Zsd�d��Ztd�d��Zud�d��Zvd�d��Zwd�d��Zxd�d��Zyd�d��Zzd�d��Z{d�d��Z|d�d„Z}d�dĄZ~d�dƄZd�dȄZ�d�dʄZ�d�d̄Z�dS)��PrettyTableNcKsZ|jdd�|_g|_i|_i|_i|_g|_|r8||_ng|_dj	�|_
|j
jdj	��|j
jdj	��x0|j
D]&}||kr�|j|||�qpd||<qpW|dp�d|_
|d	p�d|_|d
p�d|_|dd'kr�|d|_nd|_|dp�d|_|dd(k�r
|d|_nd|_|d�pt|_|d�p,t|_|d�p<d|_|dd)k�rZ|d|_nd
|_|d�ppdd�|_|d�p�i|_|d�p�i|_|d�p�d|_|d�p�d|_|d�p�d|_|d�p�|jd�|_ |d�p�|jd �|_!|d!�p|jd"�|_"|d#d*k�r |d#|_#nd|_#|d$�p2d
|_$|d%�pBd
|_%|d&�pRi|_&dS)+a�Return a new PrettyTable instance

        Arguments:

        encoding - Unicode encoding scheme used to decode any encoded input
        field_names - list or tuple of field names
        fields - list or tuple of field names to include in displays
        start - index of first data row to include in output
        end - index of last data row to include in output PLUS ONE (list slice style)
        header - print a header showing field names (True or False)
        header_style - stylisation to apply to field names in header ("cap", "title", "upper", "lower" or None)
        border - print a border around the table (True or False)
        hrules - controls printing of horizontal rules after rows.  Allowed values: FRAME, HEADER, ALL, NONE
        vrules - controls printing of vertical rules between columns.  Allowed values: FRAME, ALL, NONE
        int_format - controls formatting of integer data
        float_format - controls formatting of floating point data
        padding_width - number of spaces on either side of column data (only used if left and right paddings are None)
        left_padding_width - number of spaces on left hand side of column data
        right_padding_width - number of spaces on right hand side of column data
        vertical_char - single character string used to draw vertical lines
        horizontal_char - single character string used to draw horizontal lines
        junction_char - single character string used to draw line junctions
        sortby - name of field to sort rows by
        sort_key - sorting key function, applied to data points before sorting
        valign - default valign for each row (None, "t", "m" or "b")
        reversesort - True or False to sort in descending or ascending order�encodingzUTF-8zZstart end fields header border sortby reversesort sort_key attributes format hrules vruleszLint_format float_format padding_width left_padding_width right_padding_widthzQvertical_char horizontal_char junction_char header_style valign xhtml print_emptyN�startr�end�fields�headerTF�header_style�border�hrules�vrules�sortby�reversesort�sort_keycSs|S)Nr)�xrrr�<lambda>�sz&PrettyTable.__init__.<locals>.<lambda>�
int_format�float_format�
padding_widthr�left_padding_width�right_padding_width�
vertical_char�|�horizontal_char�-�
junction_char�+�print_empty�format�xhtml�
attributes)TF)TF)TF)TF)'�getr�_field_names�_align�_valign�
_max_width�_rows�field_names�_widthsr�_options�extend�_validate_option�_start�_end�_fields�_header�
_header_style�_border�FRAME�_hrules�ALL�_vrules�_sortby�_reversesort�	_sort_key�_int_format�
_float_format�_padding_width�_left_padding_width�_right_padding_width�_unicode�_vertical_char�_horizontal_char�_junction_char�_print_empty�_formatZ_xhtml�_attributes)�selfr=�kwargs�optionrrr�__init__Ts^
zPrettyTable.__init__cCs.t|t�st|�}t|t�s*t||jd�}|S)N�strict)�
isinstance�
basestring�str�unicoder)r[�valuerrrrT�s


zPrettyTable._unicodecCs�|t|�}|dkr ||dS|dkr4|d|S|dr�t|�drh|dd||dddS|ddd||ddSn|dd||ddSdS)N�l� �rrr)r
)r[rr�alignZexcessrrr�_justify�s "zPrettyTable._justifycCsP|dkrt|j�S|dkrD|jr*t|j�S|jr>t|jd�SdSnt|��dS)N�rowcountZcolcountr)rr<r8�AttributeError)r[�namerrr�__getattr__�s

zPrettyTable.__getattr__cCs�t�}|j|_x(|jD]}t|d|t|d|��qWt|dt|d��t|t�rtxJ|j|D]}|j|�q`Wn,t|t	�r�|j|j|�nt
dt|���|S)N�_r9z0Index %s is invalid, must be an integer or slice)rr=r?�setattr�getattrr`�slicer<�add_row�int�	Exceptionrb)r[�index�new�attr�rowrrr�__getitem__�s

zPrettyTable.__getitem__cCs|j�S)N)�__unicode__)r[rrr�__str__�szPrettyTable.__str__cCs|j�j|j�S)N)rz�encoder)r[rrrr{�scCs|j�S)N)�
get_string)r[rrrrz�szPrettyTable.__unicode__cCs4|dkr|j|��n|dkr.|j||��n|d	krD|j||�n�|d
krZ|j||�n�|dkrp|j||�n�|dkr�|j||�n�|d
kr�|j||�n�|dkr�|j||�n~|dkr�|j|�nj|dkr�|j	||�nT|dk�r�|j
||�n<|dk�r|j||�n$|dk�r$|j||�nt
d|��dS)Nr=rr�	max_widthr*r+r,r4r#r%r!r"rrr r$r5r3rr(r)r-r/r1r6zUnrecognised option: %s!)rrr~r*r+r,r4)rr r$r5r3)r-r/r1)�_validate_field_names�_validate_nonnegative_int�_validate_field_name�_validate_function�_validate_hrules�_validate_vrules�_validate_all_field_names�_validate_true_or_false�_validate_header_style�_validate_int_format�_validate_float_format�_validate_single_char�_validate_attributesrt)r[r]�valrrrrAs6


zPrettyTable._validate_optioncCs�|jrPyt|�t|j�kst�Wn.tk
rNtdt|�t|j�f��YnX|jr�yt|�t|jd�ksrt�Wn2tk
r�tdt|�t|jd�f��YnXyt|�tt|��ks�t�Wntk
r�td��YnXdS)NzJField name list has incorrect number of values, (actual) %d!=%d (expected)rzField names must be unique!)r8r�AssertionErrorrtr<�set)r[r�rrrrs $z!PrettyTable._validate_field_namescCs2y|dkst�Wntk
r,td��YnXdS)N�cap�title�upper�lowerz;Invalid header style, use cap, title, upper, lower or None!)r�r�r�r�N)r�rt)r[r�rrrr�0sz"PrettyTable._validate_header_stylecCs6y|dkst�Wn tk
r0td|��YnXdS)Nre�crgz'Alignment %s is invalid, use l, c or r!)rer�rg)r�rt)r[r�rrr�_validate_align6szPrettyTable._validate_aligncCs6y|dkst�Wn tk
r0td|��YnXdS)N�t�m�bz-Alignment %s is invalid, use t, m, b or None!)r�r�r�N)r�rt)r[r�rrr�_validate_valign<szPrettyTable._validate_valigncCsDyt|�dkst�Wn*tk
r>td||j|�f��YnXdS)NrzInvalid value for %s: %s!)rsr�rtrT)r[rlr�rrrr�Bsz%PrettyTable._validate_nonnegative_intcCs6y|dkst�Wn tk
r0td|��YnXdS)NTFz-Invalid value for %s!  Must be True or False.)TF)r�rt)r[rlr�rrrr�Hsz#PrettyTable._validate_true_or_falsecCsV|dkrdSy$t|�ttfks"t�|j�s.t�Wn tk
rPtd|��YnXdS)N�z8Invalid value for %s!  Must be an integer format string.)�typerbrcr��isdigitrt)r[rlr�rrrr�Nsz PrettyTable._validate_int_formatcCs�|dkrdSyvt|�ttfks"t�d|ks.t�|jd�}t|�dksHt�|ddksd|dj�sdt�|ddks�|dj�s�t�Wn tk
r�td|��YnXdS)Nr��.rrrz5Invalid value for %s!  Must be a float format string.)r�rbrcr�rrr�rt)r[rlr��bitsrrrr�Ws
 z"PrettyTable._validate_float_formatcCs8yt|d�st�Wn tk
r2td|��YnXdS)N�__call__z*Invalid value for %s!  Must be a function.)�hasattrr�rt)r[rlr�rrrr�dszPrettyTable._validate_functioncCs>y|ttttfkst�Wn tk
r8td|��YnXdS)Nz:Invalid value for %s!  Must be ALL, FRAME, HEADER or NONE.)rJrH�HEADER�NONEr�rt)r[rlr�rrrr�jszPrettyTable._validate_hrulescCs<y|tttfkst�Wn tk
r6td|��YnXdS)Nz3Invalid value for %s!  Must be ALL, FRAME, or NONE.)rJrHr�r�rt)r[rlr�rrrr�pszPrettyTable._validate_vrulescCs@y||jks|dkst�Wn tk
r:td|��YnXdS)NzInvalid field name: %s!)r8r�rt)r[rlr�rrrr�vsz PrettyTable._validate_field_namecCs@yx|D]}|j||�qWWntk
r:td��YnXdS)Nz)fields must be a sequence of field names!)r�r�rt)r[rlr�r&rrrr�|s

z%PrettyTable._validate_all_field_namescCs:yt|�dkst�Wn tk
r4td|��YnXdS)Nrz4Invalid value for %s!  Must be a string of length 1.)r
r�rt)r[rlr�rrrr��sz!PrettyTable._validate_single_charcCs4yt|t�st�Wntk
r.td��YnXdS)Nz4attributes must be a dictionary of name/value pairs!)r`�dictr�rt)r[rlr�rrrr��sz PrettyTable._validate_attributescCs|jS)N)r8)r[rrr�_get_field_names�szPrettyTable._get_field_namescs$�fdd�|D�}�jd|��jr2�jdd�}|�_�jr�|r�x&t||�D]\}}�j|�j|<qNWx>|D]}|�jkrp�jj|�qpWnx�jD]}d�j|<q�W�jo�|�rx&t||�D]\}}�j|�j|<q�Wx@|D]}|�jkr�jj|�q�Wnx�jD]}d�j|<�qWdS)Ncsg|]}�j|��qSr)rT)rr&)r[rrr�sz0PrettyTable._set_field_names.<locals>.<listcomp>r=r�r�)rAr8r9�zip�popr:)r[r�Z	old_namesZold_name�new_name�fieldr)r[r�_set_field_names�s*




zPrettyTable._set_field_namescCs|jS)N)r9)r[rrr�
_get_align�szPrettyTable._get_aligncCs(|j|�x|jD]}||j|<qWdS)N)r�r8r9)r[r�r�rrr�
_set_align�s
zPrettyTable._set_aligncCs|jS)N)r:)r[rrr�_get_valign�szPrettyTable._get_valigncCs(|j|�x|jD]}||j|<qWdS)N)r�r8r:)r[r�r�rrr�_set_valign�s
zPrettyTable._set_valigncCs|jS)N)r;)r[rrr�_get_max_width�szPrettyTable._get_max_widthcCs*|jd|�x|jD]}||j|<qWdS)Nr~)rAr8r;)r[r�r�rrr�_set_max_width�szPrettyTable._set_max_widthcCs|jS)z�List or tuple of field names to include in displays

        Arguments:

        fields - list or tuple of field names to include in displays)rD)r[rrr�_get_fields�szPrettyTable._get_fieldscCs|jd|�||_dS)Nr)rArD)r[r�rrr�_set_fields�szPrettyTable._set_fieldscCs|jS)z{Start index of the range of rows to print

        Arguments:

        start - index of first data row to include in output)rB)r[rrr�
_get_start�szPrettyTable._get_startcCs|jd|�||_dS)Nr)rArB)r[r�rrr�
_set_start�szPrettyTable._set_startcCs|jS)z�End index of the range of rows to print

        Arguments:

        end - index of last data row to include in output PLUS ONE (list slice style))rC)r[rrr�_get_end�szPrettyTable._get_endcCs|jd|�||_dS)Nr)rArC)r[r�rrr�_set_end�szPrettyTable._set_endcCs|jS)z_Name of field by which to sort rows

        Arguments:

        sortby - field name to sort by)rL)r[rrr�_get_sortby�szPrettyTable._get_sortbycCs|jd|�||_dS)Nr#)rArL)r[r�rrr�_set_sortby�szPrettyTable._set_sortbycCs|jS)z�Controls direction of sorting (ascending vs descending)

        Arguments:

        reveresort - set to True to sort by descending order, or False to sort by ascending order)rM)r[rrr�_get_reversesort�szPrettyTable._get_reversesortcCs|jd|�||_dS)Nr$)rArM)r[r�rrr�_set_reversesortszPrettyTable._set_reversesortcCs|jS)z�Sorting key function, applied to data points before sorting

        Arguments:

        sort_key - a function which takes one argument and returns something to be sorted)rN)r[rrr�
_get_sort_key	szPrettyTable._get_sort_keycCs|jd|�||_dS)Nr%)rArN)r[r�rrr�
_set_sort_keyszPrettyTable._set_sort_keycCs|jS)z�Controls printing of table header with field names

        Arguments:

        header - print a header showing field names (True or False))rE)r[rrr�_get_headerszPrettyTable._get_headercCs|jd|�||_dS)Nr)rArE)r[r�rrr�_set_headerszPrettyTable._set_headercCs|jS)z�Controls stylisation applied to field names in header

        Arguments:

        header_style - stylisation to apply to field names in header ("cap", "title", "upper", "lower" or None))rF)r[rrr�_get_header_style!szPrettyTable._get_header_stylecCs|j|�||_dS)N)r�rF)r[r�rrr�_set_header_style(s
zPrettyTable._set_header_stylecCs|jS)z~Controls printing of border around table

        Arguments:

        border - print a border around the table (True or False))rG)r[rrr�_get_border-szPrettyTable._get_bordercCs|jd|�||_dS)Nr )rArG)r[r�rrr�_set_border4szPrettyTable._set_bordercCs|jS)z�Controls printing of horizontal rules after rows

        Arguments:

        hrules - horizontal rules style.  Allowed values: FRAME, ALL, HEADER, NONE)rI)r[rrr�_get_hrules9szPrettyTable._get_hrulescCs|jd|�||_dS)Nr!)rArI)r[r�rrr�_set_hrules@szPrettyTable._set_hrulescCs|jS)z�Controls printing of vertical rules between columns

        Arguments:

        vrules - vertical rules style.  Allowed values: FRAME, ALL, NONE)rK)r[rrr�_get_vrulesEszPrettyTable._get_vrulescCs|jd|�||_dS)Nr")rArK)r[r�rrr�_set_vrulesLszPrettyTable._set_vrulescCs|jS)zbControls formatting of integer data
        Arguments:

        int_format - integer format string)rO)r[rrr�_get_int_formatQszPrettyTable._get_int_formatcCsx|jD]}||j|<qWdS)N)r8rO)r[r�r�rrr�_set_int_formatWszPrettyTable._set_int_formatcCs|jS)zrControls formatting of floating point data
        Arguments:

        float_format - floating point format string)rP)r[rrr�_get_float_format]szPrettyTable._get_float_formatcCsx|jD]}||j|<qWdS)N)r8rP)r[r�r�rrr�_set_float_formatcszPrettyTable._set_float_formatcCs|jS)z�The number of empty spaces between a column's edge and its content

        Arguments:

        padding_width - number of spaces, must be a positive integer)rQ)r[rrr�_get_padding_widthiszPrettyTable._get_padding_widthcCs|jd|�||_dS)Nr*)rArQ)r[r�rrr�_set_padding_widthpszPrettyTable._set_padding_widthcCs|jS)z�The number of empty spaces between a column's left edge and its content

        Arguments:

        left_padding - number of spaces, must be a positive integer)rR)r[rrr�_get_left_padding_widthusz#PrettyTable._get_left_padding_widthcCs|jd|�||_dS)Nr+)rArR)r[r�rrr�_set_left_padding_width|sz#PrettyTable._set_left_padding_widthcCs|jS)z�The number of empty spaces between a column's right edge and its content

        Arguments:

        right_padding - number of spaces, must be a positive integer)rS)r[rrr�_get_right_padding_width�sz$PrettyTable._get_right_padding_widthcCs|jd|�||_dS)Nr,)rArS)r[r�rrr�_set_right_padding_width�sz$PrettyTable._set_right_padding_widthcCs|jS)z�The charcter used when printing table borders to draw vertical lines

        Arguments:

        vertical_char - single character string used to draw vertical lines)rU)r[rrr�_get_vertical_char�szPrettyTable._get_vertical_charcCs |j|�}|jd|�||_dS)Nr-)rTrArU)r[r�rrr�_set_vertical_char�s
zPrettyTable._set_vertical_charcCs|jS)z�The charcter used when printing table borders to draw horizontal lines

        Arguments:

        horizontal_char - single character string used to draw horizontal lines)rV)r[rrr�_get_horizontal_char�sz PrettyTable._get_horizontal_charcCs |j|�}|jd|�||_dS)Nr/)rTrArV)r[r�rrr�_set_horizontal_char�s
z PrettyTable._set_horizontal_charcCs|jS)z�The charcter used when printing table borders to draw line junctions

        Arguments:

        junction_char - single character string used to draw line junctions)rW)r[rrr�_get_junction_char�szPrettyTable._get_junction_charcCs |j|�}|jd|�||_dS)Nr-)rTrArW)r[r�rrr�_set_junction_char�s
zPrettyTable._set_junction_charcCs|jS)z~Controls whether or not HTML tables are formatted to match styling options

        Arguments:

        format - True or False)rY)r[rrr�_get_format�szPrettyTable._get_formatcCs|jd|�||_dS)Nr4)rArY)r[r�rrr�_set_format�szPrettyTable._set_formatcCs|jS)z�Controls whether or not empty tables produce a header and frame or just an empty string

        Arguments:

        print_empty - True or False)rX)r[rrr�_get_print_empty�szPrettyTable._get_print_emptycCs|jd|�||_dS)Nr3)rArX)r[r�rrr�_set_print_empty�szPrettyTable._set_print_emptycCs|jS)z�A dictionary of HTML attribute name/value pairs to be included in the <table> tag when printing HTML

        Arguments:

        attributes - dictionary of attributes)rZ)r[rrr�_get_attributes�szPrettyTable._get_attributescCs|jd|�||_dS)Nr6)rArZ)r[r�rrr�_set_attributes�szPrettyTable._set_attributescCsPi}xF|jD]<}||kr6|j|||�||||<qt|d|�||<qW|S)Nrn)r?rArp)r[r\�optionsr]rrr�_get_options�szPrettyTable._get_optionscCsT|tkr|j�n>|tkr$|j�n,|tkr6|j�n|tkrH|j�ntd��dS)NzInvalid pre-set style!)	�DEFAULT�_set_default_style�MSWORD_FRIENDLY�_set_msword_style�
PLAIN_COLUMNS�_set_columns_style�RANDOM�_set_random_stylert)r[Zstylerrr�	set_style�s



zPrettyTable.set_stylecCs@d|_d|_t|_t|_d|_d|_d|_d|_	d|_
d|_dS)NTrr.r0r2)rr rHrIrJrKr*r+r,r-r/r1)r[rrrr��szPrettyTable._set_default_stylecCs.d|_d|_t|_d|_d|_d|_d|_dS)NTrr.)rr r�rIr*r+r,r-)r[rrrr�szPrettyTable._set_msword_stylecCs"d|_d|_d|_d|_d|_dS)NTFrr�)rr r*r+r,)r[rrrr�s
zPrettyTable._set_columns_stylecCs�tjd�|_tjd�|_tjttttf�|_tjtttf�|_	tj
dd�|_tj
dd�|_tjd�|_
tjd�|_tjd�|_dS)NTFr�z ~!@#$%^&*()_+|-=\{}[];':",./;<>?)TF)TF)�randomZchoicerr rJrHr�r�rIrKZrandintr+r,r-r/r1)r[rrrr�szPrettyTable._set_random_stylecCsf|jr2t|�t|j�kr2tdt|�t|j�f��|jsRdd�tdt|��D�|_|jjt|��dS)z�Add a row to the table

        Arguments:

        row - row of data, should be a list with as many elements as the table
        has fieldsz>Row has incorrect number of values, (actual) %d!=%d (expected)cSsg|]}d|d�qS)zField %drr)r�nrrrr4sz'PrettyTable.add_row.<locals>.<listcomp>rN)r8rrt�ranger=r<�append�list)r[rxrrrrr(s
	zPrettyTable.add_rowcCs4|t|j�dkr(td|t|j�f��|j|=dS)z�Delete a row to the table

        Arguments:

        row_index - The index of the row you want to delete.  Indexing starts at 0.rz4Cant delete row at index %d, table only has %d rows!N)rr<rt)r[Z	row_indexrrr�del_row7szPrettyTable.del_rowr�r�cCs�t|j�dt|�fkr�|j|�|j|�|jj|�||j|<||j|<xdtdt|��D]6}t|j�|dkr||jjg�|j|j||�qZWnt	dt|�t|j�f��dS)a�Add a column to the table.

        Arguments:

        fieldname - name of the field to contain the new column of data
        column - column of data, should be a list with as many elements as the
        table has rows
        align - desired alignment for this column - "l" for left, "c" for centre and "r" for right
        valign - desired vertical alignment for new columns - "t" for top, "m" for middle and "b" for bottomrrz2Column length %d does not match number of rows %d!N)
rr<r�r�r8r�r9r:r�rt)r[�	fieldname�columnrh�valign�irrr�
add_columnCs



zPrettyTable.add_columncCs
g|_dS)z?Delete all rows from the table but keep the current field namesN)r<)r[rrr�
clear_rows\szPrettyTable.clear_rowscCsg|_g|_g|_dS)zWDelete all rows and field names from the table, maintaining nothing but styling optionsN)r<r8r>)r[rrr�clearbszPrettyTable.clearcCs
tj|�S)N)�copy�deepcopy)r[rrrr�nszPrettyTable.copycCsdt|t�r.||jkr.|jd|j||�}n,t|t�rZ||jkrZ|jd|j||�}|j|�S)Nz%%%sdz%%%sf)r`rsrOrT�floatrP)r[r�rdrrr�
_format_valueus
zPrettyTable._format_valuecCs�|drdd�|jD�}nt|j�dg}xx|D]p}xjt|�D]^\}}|j|}||jkr�t||tt|�d|j|��||<q>t||t|�d�||<q>Wq0W||_dS)NrcSsg|]}t|�d�qS)r)r)rr�rrrr~sz/PrettyTable._compute_widths.<locals>.<listcomp>r)	r8rr=�	enumerater~r�minrr>)r[�rowsr�Zwidthsrxrurdr�rrr�_compute_widths|s


("zPrettyTable._compute_widthscCsD|ddk	r|d}n|d}|ddk	r4|d}n|d}||fS)Nr+r*r,r)r[r��lpad�rpadrrr�_get_padding_widths�s

zPrettyTable._get_padding_widthscsntj|j|d|d��}|drj|jj|d���fdd�|D�}|j|d|dd�d	d�|D�}|S)
z�Return only those data rows that should be printed, based on slicing and sorting.

        Arguments:

        options - dictionary of option settings.rrr#csg|]}|�g|�qSrr)rrx)�	sortindexrrr�sz)PrettyTable._get_rows.<locals>.<listcomp>r$r%)�reverse�keycSsg|]}|dd��qS)rNr)rrxrrrr�s)r�r�r<r8ru�sort)r[r�r�r)rr�	_get_rows�szPrettyTable._get_rowscs�fdd�t�j|�D�S)Ncsg|]\}}�j||��qSr)r�)rr�rd)r[rrr�sz+PrettyTable._format_row.<locals>.<listcomp>)r�r8)r[rxr�r)r[r�_format_row�szPrettyTable._format_rowcs��fdd�|D�S)Ncsg|]}�j|���qSr)r)rrx)r�r[rrr�sz,PrettyTable._format_rows.<locals>.<listcomp>r)r[r�r�r)r�r[r�_format_rows�szPrettyTable._format_rowscKs�|j|�}g}|jdkr0|ds,|dr0dS|j|�}|j||�}|j||�|j|�|_|drx|j|j|��n$|dr�|dt	t
fkr�|j|j�x|D]}|j|j||��q�W|dr�|dt
kr�|j|j�|jd�j
|�S)a"Return string representation of table in current state.

        Arguments:

        start - index of first data row to include in output
        end - index of last data row to include in output PLUS ONE (list slice style)
        fields - names of fields (columns) to include
        header - print a header showing field names (True or False)
        border - print a border around the table (True or False)
        hrules - controls printing of horizontal rules after rows.  Allowed values: ALL, FRAME, HEADER, NONE
        vrules - controls printing of vertical rules between columns.  Allowed values: FRAME, ALL, NONE
        int_format - controls formatting of integer data
        float_format - controls formatting of floating point data
        padding_width - number of spaces on either side of column data (only used if left and right paddings are None)
        left_padding_width - number of spaces on left hand side of column data
        right_padding_width - number of spaces on right hand side of column data
        vertical_char - single character string used to draw vertical lines
        horizontal_char - single character string used to draw horizontal lines
        junction_char - single character string used to draw line junctions
        sortby - name of field to sort rows by
        sort_key - sorting key function, applied to data points before sorting
        reversesort - True or False to sort in descending or ascending order
        print empty - if True, stringify just the header for an empty table, if False return an empty string rr3r r�rr!r)r�rjrrr��_stringify_hrule�_hruler��_stringify_headerrJrH�_stringify_rowrT�join)r[r\r�rr��formatted_rowsrxrrrr}�s"


zPrettyTable.get_stringcCs|dsdS|j|�\}}|dttfkr6|dg}n
|dg}|js^|j|d�dj|�Sxtt|j|j�D]b\}}|dr�||dkr�qn|j||||d�|dtkr�|j|d�qn|j|d�qnW|dtkr�|j�|j|d�dj|�S)Nr r�r"r1r/r)	r�rJrHr8r�rr�r>r�)r[r�r�r�r�r�rrrrr�s(

zPrettyTable._stringify_hrulecCs�g}|j|�\}}|drj|dttfkr@|j|j�|jd�|dttfkr`|j|d�n
|jd�|js�|dttfkr�|j|d�n
|jd�x�t|j|j�D]�\}}|dr�||dkr�q�|jdkr�|j	�}nD|jd	kr�|j
�}n0|jd
k�r|j�}n|jdk�r|j�}n|}|jd||j
|||j|�d|�|dr�|dtk�rp|j|d�q�|jd�q�W|d�r�|dtk�r�|j�|j|d�|d�r�|dtk�r�|jd�|j|j�dj|�S)
Nr r!rr"r-rfrr�r�r�r�r�)r�rJrHr�rr8r�r>rF�
capitalizer�r�r�rir9r�r�r)r[r�r�r�r�r�rr�rrrr	sJ








*
zPrettyTable._stringify_headerc	Csx�ttdt|��|j||j�D]`\}}}}|jd�}g}x.|D]&}	t|	�|krZtj|	|�}	|j	|	�q>W|}dj
|�}|||<qWd}
x$|D]}t|�d}||
kr�|}
q�Wg}
|j|�\}}xVtd|
�D]H}|
j	g�|dr�|dt
tfk�r|
|j	|j�q�|
|j	d�q�W�xFt|j||j�D�]0\}}}|j|}|jd�}|
t|�}|�r�|dk�r�dgt|d	�|dg|t|d	�}n(|d
k�r�dg||}n|dg|}d}x�|D]�}|d�r�||dk�r�q�|
|j	d||j|||j|�d|�|d�rL|dt
k�r>|
|j	|j�n|
|j	d�|d7}�q�W�q*WxJtd|
�D]<}|d�rl|dtk�rl|
|j�|
|j	|d��qlW|d�r�|d
t
k�r�|
|
dj	d�|
|
dj	|j�x&td|
�D]}dj
|
|�|
|<�q�Wdj
|
�S)Nrrrr r"rfr�r�rr�rr-r!)r�r�rr8r>rr
�textwrapZfillr�rrr�rJrHr-r:rsrir9r�r)r[rxr�rur�rdrrZ	new_linesrZ
row_heightr��hr�r�r��yr�ZdHeightrerrrr
:sj*




 


.

.
zPrettyTable._stringify_rowcKs,|j|�}|dr|j|�}n
|j|�}|S)a;Return string representation of HTML formatted version of table in current state.

        Arguments:

        start - index of first data row to include in output
        end - index of last data row to include in output PLUS ONE (list slice style)
        fields - names of fields (columns) to include
        header - print a header showing field names (True or False)
        border - print a border around the table (True or False)
        hrules - controls printing of horizontal rules after rows.  Allowed values: ALL, FRAME, HEADER, NONE
        vrules - controls printing of vertical rules between columns.  Allowed values: FRAME, ALL, NONE
        int_format - controls formatting of integer data
        float_format - controls formatting of floating point data
        padding_width - number of spaces on either side of column data (only used if left and right paddings are None)
        left_padding_width - number of spaces on left hand side of column data
        right_padding_width - number of spaces on right hand side of column data
        sortby - name of field to sort rows by
        sort_key - sorting key function, applied to data points before sorting
        attributes - dictionary of name/value pairs to include as HTML attributes in the <table> tag
        xhtml - print <br/> tags if True, <br> tags if falser4)r��_get_formatted_html_string�_get_simple_html_string)r[r\r��stringrrr�get_html_string�s


zPrettyTable.get_html_stringcCsrg}|drd}nd}g}|jd�|drXx*|dD]}|jd||d|f�q6W|jd�|jdj|��|d	r�|jd
�x>|jD]4}|dr�||dkr�q�|jdt|�jd
|��q�W|jd�|j|�}|j||�}xr|D]j}	|jd
�xPt|j|	�D]@\}}
|d�r*||dk�r*�q|jdt|
�jd
|���qW|jd�q�W|jd�|jd
�j|�S)Nr5z<br/>z<br>z<tabler6z %s="%s"�>r�rz    <tr>rz        <th>%s</th>rz	    </tr>z        <td>%s</td>z</table>)	r�rr8r�replacerrr�rT)r[r�r�	linebreak�open_tag�	attr_namer�r�rrx�datumrrrr�s:






 
z#PrettyTable._get_simple_html_stringcCs�g}|j|�\}}|dr d}nd}g}|jd�|d�r|dtkr`|dtkr`|jd�n�|dtkr�|dtkr�|jd	�n�|dtkr�|dtkr�|jd
�n`|dtkr�|jd�nH|dtkr�|jd�n0|dtkr�|jd
�n|dtk�r|jd�|d�r@x,|dD] }|jd||d|f��qW|jd�|jdj|��|d�r�|jd�xL|jD]B}|d�r�||dk�r��qv|jd||t|�jd|�f��qvW|jd�|j|�}	|j	|	|�}
g}g}xH|jD]>}|jdddd�|j
|�|jdddd �|j|��q�Wx�|
D]~}
|jd�xbt|j|
||�D]N\}}}}|d�r|||dk�r|�qT|jd!||||t|�jd|�f��qTW|jd��q4W|jd"�|j
d�j|�S)#Nr5z<br/>z<br>z<tabler r!r"z frame="box" rules="all"z frame="box"z frame="box" rules="cols"z frame="hsides"z frame="hsides" rules="rows"z frame="vsides"z frame="vsides" rules="cols"r6z %s="%s"rr�rz    <tr>rzW        <th style="padding-left: %dem; padding-right: %dem; text-align: center">%s</th>rz	    </tr>�left�right�center)rergr��topZmiddleZbottom)r�r�r�zg        <td style="padding-left: %dem; padding-right: %dem; text-align: %s; vertical-align: %s">%s</td>z</table>)r�r�rJrHrr8rrrrr9r:r�rT)r[r�rr�r�rrrr�r�rZalignsZvalignsrxrrhr�rrrr�sd



 


&

"

*
z&PrettyTable._get_formatted_html_string)N)r�r�)��__name__�
__module__�__qualname__r^rTrirmry�py3kr{rzrArr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��propertyr=r�r�rhr�r�r�r�r�r~r�r�rr�r�rr�r�rr�r�r#r�r�r$r�r�r%r�r�rr�r�rr�r�r r�r�r!r�r�r"r�r�r(r�r�r)r�r�r*r�r�r+r�r�r,r�r�r-r�r�r/r�r�r1r�r�r4r�r�r3r�r�r6r�r�r�r�r�r�rrr�r�r�r�r�r�r�r�rrrr}rr	r
rrrrrrrrRs
]
	































=/L (rcCs�d|kodknrdSd|ko.dknr8dSd|koJdknrTdStjt|��rfd	Sd
|koxdkns�d|ko�d
knr�dSd|ko�dknr�dSd|ko�dknr�dS|dkr�dS|dkr�d	SdS)N�!�~riNi��ri�i��ri@0i�0i�0i�0i�i`�i0i>0r���)r�r&���)rr')�unicodedataZ	combining�uni_chr)�charrrr�_char_block_widths&0r,cCsttttttjd|����S)Nr�)�sum�itermapr,�ord�_re�sub)r�rrrr
/sr
cKs�tj�j|jd��}|jd�tj||�}tf|�}|r@||_n.trZdd�t	|�D�|_ndd�|j	�D�|_x |D]}|j
dd�|D��qtW|S)NircSsg|]}|j��qSr)�strip)rr&rrrrBszfrom_csv.<locals>.<listcomp>cSsg|]}|j��qSr)r2)rr&rrrrDscSsg|]}|j��qSr)r2)rr&rrrrGs)�csvZSnifferZsniff�read�seek�readerrr=r"�nextrr)�fpr=r\Zdialectr6�tablerxrrr�from_csv7s


r:cKsF|jrBtf|�}dd�|jD�|_x|j�D]}|j|�q,W|SdS)NcSsg|]}|d�qS)rr)r�colrrrrOsz"from_db_cursor.<locals>.<listcomp>)�descriptionrr=Zfetchallrr)Zcursorr\r9rxrrr�from_db_cursorKs
r=c@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�TableHandlercKs>tj|�||_g|_g|_g|_d|_d|_d|_d|_	dS)Nrr�F)
rr^r\�tables�last_rowr��
max_row_width�active�last_content�is_last_row_header)r[r\rrrr^Vs
zTableHandler.__init__cCs||_|dkrd|_dS)N�thT)rBrD)r[�tag�attrsrrr�handle_starttagaszTableHandler.handle_starttagcCs�|dkr|jj�}|jj|�|dkrZ|jj|j|jf�t|jt|j��|_g|_d|_|dkr�|j	|j�}|j
j|�g|_d|_d|_dS)NrE�tdZtrFr9rf)rErI)rCr2r@r�r�rDrrAr�generate_tabler?rB)r[rFZstripped_contentr9rrr�
handle_endtagfs
zTableHandler.handle_endtagcCs|j|7_dS)N)rC)r[�datarrr�handle_dataxszTableHandler.handle_datacCs�tf|j�}x�|jD]~}t|d�|jkr^|jt|d�}x td|�D]}|djd�qHW|ddkr�|j|d�|d|_q|j	|d�qW|S)zE
        Generates from a list of rows a PrettyTable object.
        rrr0T)
rr\r�rrAr�r��make_fields_uniquer=rr)r[r�r9rxZappendsr�rrrrJ{szTableHandler.generate_tablecCsXxRtdt|��D]@}x:t|dt|��D]$}||||kr(||d7<q(WqWdS)zB
        iterates over the row and make each field unique
        rr�'N)r�r)r[rr��jrrrrN�szTableHandler.make_fields_uniqueN)	rr r!r^rHrKrMrJrNrrrrr>Tsr>cKstf|�}|j|�|jS)z�
    Generates a list of PrettyTables from a string of HTML code. Each <table> in
    the HTML becomes one PrettyTable object.
    )r>Zfeedr?)�	html_coder\�parserrrr�	from_html�s

rScKsFt|f|�}yt|�dkst�Wntk
r<td��YnX|dS)zf
    Generates a PrettyTables from a string of HTML code which contains only a
    single <table>
    rzDMore than one <table> in provided HTML code!  Use from_html instead.r)rSrr�rt)rQr\r?rrr�
from_html_one�srTcCs�tddddg�}d|_d|_d|jd<d|_d|jd<|jd	d
ddg�|jd
dddg�|jddddg�|jddddg�|jddddg�|jdddd g�|jd!d"d#d$g�t|�dS)%Nz	City nameZAreaZ
PopulationzAnnual RainfallTZ04dz6.1freZAdelaideiis�gĂ@ZBrisbaneii:Xg������@ZDarwin�piD�g�����ʚ@ZHobartiMi�"g\�@ZSydneyi
i�*Bg33333��@Z	Melbourneii�:g333337�@ZPerthi
iQ�g33333+�@)rr#r$r(r)rhrr�print)r&rrr�main�s

rW�__main__)N)2�__version__r�r3r��re�sysr�	itertoolsr)�version_infor"rbrcra�mapr.r�Ziterzip�chrr*Zhtml.parserrZimapZizipZunichrZhtmlrZcgirHrJr�r�r�r�r�r��compiler0r�objectrr,r
r:r=r>rSrTrWrrrrr�<module> sj
E!
	B


No se encontró la página – Alquiler de Limusinas, Autos Clásicos y Microbuses

Alquiler de Autos Clásicos para Sesiones Fotográficas: Estilo y Elegancia en Cada Toma

Si buscas darle un toque auténtico, elegante o retro a tus fotos, el alquiler de autos clásicos para sesiones fotográficas es la opción ideal. Este tipo de vehículos no solo son íconos del diseño automotriz, sino que se convierten en un elemento visual impactante que transforma cualquier sesión en una experiencia única.


¿Por Qué Usar Autos Clásicos en Sesiones Fotográficas?

1. Estética Visual Única

Un auto clásico aporta personalidad, historia y carácter a tus imágenes. Desde tomas urbanas hasta escenarios naturales, estos vehículos se adaptan a diferentes estilos visuales.

2. Ideal para Diversos Usos

  • Sesiones de boda y pre-boda
  • Campañas publicitarias
  • Editoriales de moda
  • Proyectos cinematográficos
  • Contenido para redes sociales

3. Variedad de Modelos

Desde convertibles vintage hasta muscle cars de los años 60 y 70, puedes elegir el modelo que mejor se ajuste a la estética de tu sesión.


Beneficios del Alquiler Profesional

  • Vehículos en excelente estado estético y mecánico
  • Choferes disponibles si se requiere movilidad
  • Asesoría para elegir el modelo adecuado
  • Posibilidad de ambientación adicional (flores, letreros, decoración retro)

Conclusión: Captura Momentos con Estilo

Un auto clásico puede transformar tu sesión fotográfica en una obra de arte visual. No importa el propósito: el estilo, la elegancia y el impacto están garantizados.


📸 ¡Reserva tu auto clásico y crea fotos memorables!

Consulta disponibilidad y haz de tu sesión algo realmente especial. ¡Llama la atención con cada toma!

Not Found

404

Sorry, the page you’re looking for doesn’t exist.