1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
U
­ý°d€Lã@sÄddlZddlZddlmZmZmZmZmZm    Z    m
Z
e  d¡ddl m Z ddlmZejdd„ƒZejdd    „ƒZejd
d „ƒZejd d „ƒZdd„Zej dddg¡ej dddg¡dd„ƒƒZdd„Zdd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zej d$d%d&ifd'd(d)difd'd*d)d+ifg¡d,d-„ƒZ ej d.d/d0g¡d1d2„ƒZ!d3d4„Z"d5d6„Z#ej d7d8dd9gg¡ej d:d%d'g¡d;d<„ƒƒZ$ej d=d+d>d?d@dAgfdBdCdDdEdFgfdGdHdIdJdKgfg¡dLdM„ƒZ%ej d)dd+g¡ej dNddOdOdPdPgfdQdOdOdPdPgfd+dPdPdOdOgfdRdPdPdOdOgfdd+gdOdOdOdOgfddQgdOdOdPdPgfddRgdOdOdOdOgfdRdQgdOdOdOdOgfg¡dSdT„ƒƒZ&dUdV„Z'ej d7ddWg¡ej dXdYdZg¡ej d[ddBg¡ej d\d]d^g¡d_d`„ƒƒƒƒZ(ej d7ddag¡ej dbddcdZg¡ej d[dddg¡ej d\d]d^g¡dedf„ƒƒƒƒZ)dgdh„Z*didj„Z+dkdl„Z,ej dmdndo„dpfdqddridsfdtg¡dudv„ƒZ-dwdx„Z.dydz„Z/d{d|„Z0ej d}dd+dBgfdd+dBdGddgfg¡d~d„ƒZ1d€d„Z2d‚dƒ„Z3d„d…„Z4dS)†éN)ÚNAÚ    DataFrameÚ
IndexSliceÚ
MultiIndexÚNaTÚ    TimestampÚoption_contextZjinja2©ÚStyler)Ú _str_escapecCs"tddgddggddgddgd    S)
Nrg°rh‘í|ã¿égÙÎ÷Sã¥ó¿ÚAÚBÚxÚy©ÚdataÚcolumnsÚindex)r©rrú`d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/io/formats/style/test_format.pyÚdfs
ýrcCs t|ddS©Nr©Zuuid_lenr    )rrrrÚstylersrcCs@tt d¡ dd¡t ddgddgg¡t ddgd    d
gg¡d S) Néér rÚaÚbÚXÚYrrr)rÚnpZarangeZreshaperÚ from_productrrrrÚdf_multi!s
ýr#cCs t|ddSrr    )r#rrrÚ styler_multi*sr$cCsp| d¡ dd¡}tdd„|dDƒƒs,t‚tdd„|dDƒƒsFt‚t|dddd     d
¡ƒd kslt‚dS) Nú{:0.1f}Tcss|]}dd„|DƒVqdS)cSsg|] }d|k‘qS)Ú display_valuer©Ú.0ÚcrrrÚ
<listcomp>1sú1test_display_format.<locals>.<genexpr>.<listcomp>Nr©r(ÚrowrrrÚ    <genexpr>1sz&test_display_format.<locals>.<genexpr>Úbodycss$|]}dd„|dd…DƒVqdS)cSsg|]}t|dƒdk‘qS)r&é)Úlenr'rrrr*2sr+r Nrr,rrrr.2srr r&ú-r0)ÚformatÚ
_translateÚallÚAssertionErrorr1Úlstrip©rÚctxrrrÚtest_display_format/sr:rTFrc
Cs¸ddg}|r&|jdd„ddddg}d    d
g}|rH|jd d dd dg}| dd¡}t|dƒD] \}}|dd||ks`t‚q`t|dd d…ƒD]\}}    |    d||ks–t‚q–dS)NrrcSs| ¡S©N©Úupper©ÚvrrrÚ<lambda>;óz+test_display_format_index.<locals>.<lambda>r)Úaxisrr r rz*{}*r z*A*z*B*Tr/r&Úhead©Ú format_indexr4Ú    enumerater6)
rrrZ    exp_indexZ exp_columnsr9Úrr-r)ÚcolrrrÚtest_display_format_index6s rIcCsT| dddœ¡ dd¡}|ddddd    ks4t‚|ddd
dd ksPt‚dS) Nr%ú{0:.2%})r rTr/rr r&z0.0éz-60.90%©r3r4r6r8rrrÚtest_format_dictLsrMcCsP| ddd„i¡ dd¡}tddgƒD]$\}}|d|dd|ks&t‚q&dS)    NrcSs| ¡Sr;r<r>rrrr@SrAz(test_format_index_dict.<locals>.<lambda>Trr r/r&rD)rr9ÚiÚvalrrrÚtest_format_index_dictRsrPcCs†| d¡ dd¡}|dddddks.t‚|ddddd    ksJt‚|ddddd
ksft‚|ddddd ks‚t‚dS) Nú{:.2f}Tr/rr r&z0.00rKz-0.61ú1.00z-1.23rLr8rrrÚtest_format_stringXs
rScCsŠ| dd„¡ dd¡}|dddddks2t‚|ddd    dd
ksNt‚|dddddksjt‚|ddd    dd
ks†t‚dS) NcSs|dkr dSdS)NrÚnegÚposrr>rrrr@arAz&test_format_callable.<locals>.<lambda>Tr/rr r&rUrKrTrLr8rrrÚtest_format_callable`s
rVcCsPtddgddggddgd}|jjddd dd¡}|d    d
d d dksPt‚|d    d
d d dkslt‚|jjddd dd¡}|d    d
d d dks t‚|d    d
d d dks¼t‚|d    d d d dksØt‚|d    d d d dksôt‚|jjdddgd dd¡}|d    d
d d dks.t‚|d    d d d dksLt‚dS)Ngš™™™™™ñ?g333333ó?r r©rr2©Úna_repTr/rr r&rKz{:.2%}z110.00%z120.00%)rYÚsubset)rÚstyler3r4r6©rr9rrrÚtest_format_with_na_rephsr]cCs„tdddddggddtjttgd}|jjdddd     d
d
¡}|d d dd dksZt‚dD] }|d d |d dks^t‚q^dS)Nr rKr0rér rWz--)rYrBTrCrr&)rKr0rr^)    rr!Únanrrr[rEr4r6)rr9rNrrrÚtest_format_index_with_na_rep{s
$r`cCs¬tdtjdgdttdƒgdœƒ}|jjddd dd¡}|ddd    d
dksTt‚|ddd d
dkspt‚|dd    d    d
dksŒt‚|dd    d d
dks¨t‚dS) NZfooZ20120101)ÚobjectÚdatetimer2rXTr/rr r&rK)    rr!r_rrr[r3r4r6r\rrrÚtest_format_non_numeric_naƒs
 þÿrczfunc, attr, kwargsr3Z_display_funcsrEZ_display_funcs_indexrBZ_display_funcs_columnsr cCsZdt||ƒkst‚t||ƒd|Ždt||ƒks4t‚t||ƒf|Ždt||ƒksVt‚dS)N)rrrQ)rQ)Úgetattrr6)rÚfuncÚattrÚkwargsrrrÚtest_format_clear’s
    rhz escape, exp)Úhtmlz!&lt;&gt;&amp;&#34;%$#_{}~^\~ ^ \ )Úlatexz†<>\&"\%\$\#\_\{\}\textasciitilde \textasciicircum \textbackslash \textasciitilde \space \textasciicircum \space \textbackslash \space cCsd}t|ggƒ}t|ddjddd}d|›d}|| ¡ksBt‚t|ddjd|d}d|›d}|| ¡kstt‚tt|gddd}|jddd    d
| d d ¡d dd    d d|›dksÄt‚|jd|d    d
| d d ¡d dd    d d|›dkst‚dS)Nz<>&"%$#_{}~^\~ ^ \ rrz&{0}&©Úescapez/<td id="T__row0_col0" class="data row0 col0" >&z&</td>rWr )rlrBTrCr&ú&©rr
r3Úto_htmlr6rEr4)rlÚexpÚcharsrÚsÚexpectedrrrrÚtest_format_escape_html¢s    ,rtcCsÂtddggƒ}t|ddjdddd}d}d    }|| ¡ks>t‚|| ¡ksNt‚tddgd
}t|dd}|jdddd d | d d ¡}|ddd ddks¢t‚|dddddks¾t‚dS)Nz<>&"rrzX&{0}>Xrirm)rlrYzI<td id="T__row0_col0" class="data row0 col0" >X&&lt;&gt;&amp;&#34;>X</td>z4<td id="T__row0_col1" class="data row0 col1" >&</td>rWr )rlrYrBTrCr&zX&&lt;&gt;&amp;&#34;>XrKrn)rrrÚexZ    expected2rr9rrrÚtest_format_escape_na_repÃs  rvcCsT|jddd}dD]}|| ¡kst‚q|jddd}dD]}|| ¡ks:t‚q:dS)Nú{:.1f}rirk)z>0.0<z>1.0<ú>-1.2<ú>-0.6<r )Ú    precisionrl)z>0<z>1<rxry)r3ror6)rrrrsrrrÚtest_format_escape_floatsÕs r{Ú    formatterr^ç@rec    Cs,tjtddt||ƒ|ƒW5QRXdS)Nzexpected str or callable©Úmatch)ÚpytestÚraisesÚ    TypeErrorrd)rr|rerrrÚtest_format_raisesàsrƒzprecision, expectedz1.0z2.0z3.2z4.6rKrRz2.01z3.21z4.57r0z1.000z2.009z3.212z4.566cCs¢tddddggddddgd}t|ƒ}|j|d|j|dd| d    d    ¡}t|ƒD]H\}}|d
d |dd |ks|t‚|d d |dd |ksTt‚qTdS)Ngð?gßO—n@gQÚ|a²    @gÝ$•C@rW©rzr )rzrBTr/rr&rC)rr
r3rEr4rFr6)rzrsrrr9rHrprrrÚtest_format_with_precisionçs
   r…zlevel, expectedrÚ_ÚzeroÚonecsätjddgddggddgd}tddgddggƒ}|d    krB||_n||_|jjd
d „||d }| d d ¡‰|d    kr¤‡fdd„tdƒDƒ}|‡fdd„tdƒDƒ7}n0‡fdd„tdƒDƒ}|‡fdd„tdƒDƒ7}||ksàt    ‚dS)Nr†r‡rˆ©Únamesr rKr0rrcSsdS)Nrrr>rrrr@rAz)test_format_index_level.<locals>.<lambda>)ÚlevelrBTcs g|]}ˆd|dd‘qS)r/rr&r©r(rr©r9rrr*sz+test_format_index_level.<locals>.<listcomp>cs g|]}ˆd|dd‘qS)r/r r&rrŒrrrr*scs$g|]}ˆdd|dd‘qS)rCrr r&rrŒrrrr*scs$g|]}ˆdd|dd‘qS)rCr r&rrŒrrrr*s)
rZ from_arraysrrrr[rEr4Úranger6)rBr‹rsÚmidxrrÚresultrrrÚtest_format_index_levelüs r‘cCsPtddgddggddgd}|jjdddœtd    dd…fd
 d d ¡}d }d }|dd    dd|ksjt‚|dddd|ks†t‚|dd    dddks¢t‚|jjdtd    dd…fd
 d d ¡}|dd    dd|ksât‚|dddd|ksþt‚|jjdtdd
 d d ¡}|dd    dd|ks8t‚|dd    dddksVt‚|jjdtdd
 d d ¡}|dd    dd|kst‚|dddd|ks®t‚|jjdtd    dgdgfd
 d d ¡}|dd    dd|ksòt‚|dddddkst‚|dd    dddks.t‚|dddd|ksLt‚dS)NgóŽSt$—¿?gï8EGrùñ?rrrWr%rJ)rrr)rZTz0.1z1.123400r/r r&rKz12.34%z0.123400)rrz1.1)rr[r3rr4r6)rr9rsZraw_11rrrÚtest_format_subsets<ÿþ$ÿr’z{:,.1f}ÚdecimalÚ.Ú*rzz    func, col)r3r )rErcCsîtdggdgdj}t||ƒd|||d dd¡}d|dd|d    ksNt‚td
ggd
gdj}t||ƒd|||d dd¡}d|dd|d    ksœt‚td ggd gdj}t||ƒd|||d dd¡}d|dd|d    ksêt‚dS) Nçnº5?€„.A©rr†)Ú    thousandsr|r“rzTZ    1_000_000r/rr&i@Bùð?nº5?€„.A©rr[rdr4r6)r|r“rzrerHrrrrrÚtest_format_thousands?sBÿþÿþÿþr›z{:,.4f}r˜ú,rcCs tdggdgdj}t||ƒd|||d dd¡}d|dd|d    ksNt‚td
ggd
gdj}t||ƒd|||d dd¡}d|dd|d    ksœt‚dS) Nr–r—r†)r“r|r˜rzTZ000_123r/rr&r™rš)r|r˜rzrerHrrrrrÚtest_format_decimalWs,ÿþÿþrc    CsZd}tjt|dtddƒW5QRXtjt|dtdgƒW5QRXtddƒdS)Nz2`escape` only permitted in {'html', 'latex'}, got r~ÚtextZ
bad_escaper})r€rÚ
ValueErrorr ©ÚmsgrrrÚtest_str_escape_erroris r¢c    CsŽtddgddgddgdœƒ}|j dd¡}|ddd    d
d ksFt‚td d ƒ0|j dd¡}|ddd    d
d ks|t‚W5QRX|ddd    d
dks¢t‚tddƒ0|j dd¡}|ddd    d
dksØt‚W5QRXtdd    ƒ2|j dd¡}|ddd    d
dkst‚W5QRX|dddd
dksBt‚tddƒ2|j dd¡}|dddd
dkszt‚W5QRX|dddd
dks¢t‚|dddd
dksÀt‚tddƒ2|j dd¡}|dddd
dksøt‚W5QRXtddƒ2|j dd¡}|dddd
dks:t‚W5QRXtddd iƒ2|j dd¡}|dddd
d!ks€t‚W5QRXdS)"NiÐr g¾Ÿ/Ý$ð?z&<z&~)ÚintÚfloatÚstrTr/rKr&r_zstyler.format.na_repÚMISSINGrz1.009000zstyler.format.decimalr†Z1_009000zstyler.format.precisionz1.01Ú2000zstyler.format.thousandsZ2_000r0zstyler.format.escaperiz    &amp;&lt;rjz\&\textasciitilde ústyler.format.formatterr£z{:,.2f}z2,000.00)rr[r4r6r)rr9Z ctx_with_oprrrÚtest_format_optionsts8 & & ( ( ( (r©cCsTt|dd}| dd¡}|dddddks4t‚|dddddksPt‚dS)    Nrr„Tr/rKr&z-1r )r
r4r6)rrr9rrrÚtest_precision_zeros  rªzformatter, expcCs|d›S)Nz.3fr)rrrrr@§rAr@z9.000)rQz9.00rwz9.0)NÚ9c    Cs@tdggƒ}td|ƒ d|›d|j ¡ks2t‚W5QRXdS)Né    r¨ú )rrr[Úto_latexr6)r|rprrrrÚ test_formatter_options_validator¤s
 r¯c
CsHd}tjt|d,tdddgƒtƒj ¡W5QRXW5QRXdS)NzValue must be an instance ofr~r¨ÚbadÚtype)r€rrŸrrr[r®r rrrÚtest_formatter_options_raises³sr²cCsªtjddggdgd}td|ddgd}|j dd¡}|d    ddd
d ksRt‚|d    ddd dksnt‚|d    ddd
d ksŠt‚|d    ddd dks¦t‚dS)Nr rKÚr‰éÿÿÿÿr)rrTr/r&Ú1Z
is_visibleÚ2)rr"rr[r4r6)rrr9rrrÚtest_1level_multiindexºsr·cCsXtddggƒ}|j dd¡}|dddddks8t‚|dddddksTt‚dS)NTFr/rr r&rK)rr[r4r6r\rrrÚtest_boolean_formatÅsr¸z hide, labelsc    Cs@|r|jdddgdtjtdd|j|dW5QRXdS)Nr©rr©r r©rBrZz"``labels`` must be of length equalr~©Úlabels)Úhider€rrŸÚ relabel_index)r$r¾r½rrrÚtest_relabel_raise_lengthÍsrÀcCsÎddg}|jdddgd|j|d| dd¡}d    d
d œ ¡|d dd ¡ksXt‚d dd œ ¡|d dd
 ¡ks~t‚ddd œ ¡|d d
d ¡ks¤t‚ddd œ ¡|d d
d
 ¡ksÊt‚dS)N©r rK©r0rrr¹rºr»r¼Trr ©Úvaluer&r/rrKr r0rr©r¾r¿r4Úitemsr6©r$r½r9rrrÚtest_relabel_indexÛs  &&&rÈcCsÐddg}|jdddgd|jd|d| dd¡}d    dd
œ ¡|d d d  ¡ksZt‚dd d
œ ¡|d d d ¡ks€t‚ddd
œ ¡|d dd  ¡ks¦t‚ddd
œ ¡|d dd ¡ksÌt‚dS)NrÁrÂr )r r)rrr»)rBr½Tr rÃrCrr0rrrrKrrÅrÇrrrÚtest_relabel_columnsæs &&&rÉcCsj| ddg¡| dd¡}dddœ ¡|ddd ¡ks@t‚dddœ ¡|ddd ¡ksft‚dS)    Nz{}TrrÃr/rrr )r¿r4rÆr6r8rrrÚtest_relabel_roundtripñs &rÊ)5Únumpyr!r€ZpandasrrrrrrrZ importorskipZpandas.io.formats.styler
Zpandas.io.formats.style_renderr Zfixturerrr#r$r:ÚmarkZ parametrizerIrMrPrSrVr]r`rcrhrtrvr{rƒr…r‘r’r›rr¢r©rªr¯r²r·r¸rÀrÈrÉrÊrrrrÚ<module>sÌ$
 
 
 
 
 
   ýþ
þþ
  ýþ
øþ   )
 
üþ    
 
þþ