hyb
2026-01-09 4cb426cb3ae31e772a09d4ade5b2f0242aaeefa0
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
Ë
nñúhF ãóΗddlmZddlmZmZddlZddlmZm    Z    m
Z
m Z ddl m Z ddlmZddlZddlmZddlmZer dd    lmZdd
lmZeed ¬ «Gd „ded««Zy)é)Ú annotations)Ú TYPE_CHECKINGÚcastN)ÚFilePathÚ
ReadBufferÚScalarÚStorageOptions)Úimport_optional_dependency)Údoc)Ú _shared_docs)ÚBaseExcelReader©Ú OpenDocument)ÚNaTTypeÚstorage_options)rc󼇗eZdZ        d                             dˆfd„ Zedd„«Z                dd„Zedd„«Zedd„«Zdd„Z    dd„Z
    d            dd„Z dd    „Z dd
„Z dd „Zdd „ZˆxZS)Ú    ODFReadercó@•—td«t‰|    |||¬«y)aF
        Read tables out of OpenDocument formatted files.
 
        Parameters
        ----------
        filepath_or_buffer : str, path to be parsed or
            an open readable stream.
        {storage_options}
        engine_kwargs : dict, optional
            Arbitrary keyword arguments passed to excel engine.
        Úodf)rÚ engine_kwargsN)r
ÚsuperÚ__init__)ÚselfÚfilepath_or_bufferrrÚ    __class__s    €úMH:\Change_password\venv_build\Lib\site-packages\pandas/io/excel/_odfreader.pyrzODFReader.__init__ s(ø€ô"    # 5Ô)Ü ‰ÑØ Ø+Ø'ð    õ    
ócó—ddlm}|S)Nrr)Úodf.opendocumentr)rrs  rÚ_workbook_classzODFReader._workbook_class8s €å1àÐrcó —ddlm}||fi|¤ŽS)Nr)Úload)rr")rrrr"s    rÚ load_workbookzODFReader.load_workbook>s€õ    *áÐ&Ñ8¨-Ñ8Ð8rcó—y)z'Property for compat with other readers.Ú©)rs rÚ empty_valuezODFReader.empty_valueEs€ðrcóŒ—ddlm}|jj|«}|Dcgc]}|j    d«‘Œc}Scc}w)z4Return a list of sheet names present in the documentr©ÚTableÚname)Ú    odf.tabler*ÚbookÚgetElementsByTypeÚ getAttribute)rr*ÚtablesÚts    rÚ sheet_nameszODFReader.sheet_namesJs8€õ    $à—‘×,Ñ,¨UÓ3ˆØ06Ö7¨1—‘˜vÕ&Ò7Ð7ùÒ7s¦Acóp—ddlm}|j|«|jj    |«}||S)Nrr))r,r*Úraise_if_bad_sheet_by_indexr-r.)rÚindexr*r0s    rÚget_sheet_by_indexzODFReader.get_sheet_by_indexRs1€Ý#à ×(Ñ(¨Ô/Ø—‘×,Ñ,¨UÓ3ˆØe‰}Ðrcóâ—ddlm}|j|«|jj    |«}|D]}|j d«|k(sŒ|cS|j «td|›d«‚)Nrr)r+zsheet z
 not found)r,r*Úraise_if_bad_sheet_by_namer-r.r/ÚcloseÚ
ValueError)rr+r*r0Útables     rÚget_sheet_by_namezODFReader.get_sheet_by_nameYsm€Ý#à ×'Ñ'¨Ô-Ø—‘×,Ñ,¨UÓ3ˆàò    ˆEØ×!Ñ! &Ó)¨TÓ1Ø’ ð    ð     
‰
Œ ܘ6 $  zÐ2Ó3Ð3rcóð‡—ddlm}m}m}|«j}|«j}||h}|j |«}    d}
d} g} |    D]a} | j Dcgc]}t|d«r|j|vr|‘Œ }}d}gŠ|D]‹}|j|k(r|j|«}n |j}|j|«}||jk(r||z }ŒV‰j|jg|z«d}‰j|g|z«Œ| t‰«kr t‰«} |j| «}t‰«dk(r|
|z }
nE| j|jgg|
z«d}
| jˆfd„t|«D««|€ŒRt| «|k\sŒbn| D]<}t|«| ksŒ|j|jg| t|«z
z«Œ>| Scc}w)z9
        Parse an ODF Table into a list of lists
        r)ÚCoveredTableCellÚ    TableCellÚTableRowÚqnamec3ó"•K—|]}‰–—Œy­w©Nr&)Ú.0Ú_Ú    table_rows  €rú    <genexpr>z+ODFReader.get_sheet_data.<locals>.<genexpr>Ÿsøèø€ÒB¨1œYÑBùsƒ )r,r>r?r@rAr.Ú
childNodesÚhasattrÚ_get_cell_valuer'Ú_get_column_repeatÚextendÚlenÚ_get_row_repeatÚrange)rÚsheetÚfile_rows_neededr>r?r@Úcovered_cell_nameÚtable_cell_nameÚ
cell_namesÚ
sheet_rowsÚ
empty_rowsÚ max_row_lenr;Ú    sheet_rowÚxÚ sheet_cellsÚ empty_cellsÚ
sheet_cellÚvalueÚ column_repeatÚ
row_repeatÚrowrFs                      @rÚget_sheet_datazODFReader.get_sheet_datafsø€÷     
ñ    
ñ -Ó.×4Ñ4ÐÙ#›+×+Ñ+ˆØ'¨Ð9ˆ
à×,Ñ,¨XÓ6ˆ
؈
؈ à.0ˆà#ó%    ˆIð#×-Ñ-öàܘ1˜gÔ&¨1¯7©7°jÑ+@òðˆKðð
ˆKØ02ˆIà)ò >
Ø×#Ñ# Ò6Ø ×0Ñ0°Ó<‘Eà ×,Ñ,Eà $× 7Ñ 7¸
Ó C ð˜D×,Ñ,Ò,Ø =Ñ0‘Kà×$Ñ$ d×&6Ñ&6Ð%7¸+Ñ%EÔFØ"#KØ×$Ñ$ e W¨}Ñ%<Õ=ð >ð œS ›^Ò+Ü! )›n à×-Ñ-¨iÓ8ˆJܐ9‹~ Ò"ؘjÑ(‘
ð— ‘ ˜t×/Ñ/Ð0Ð1°JÑ>Ô?ؐ
Ø— ‘ ÓB´°jÓ0AÔBÔBØÒ+´°E³
Ð>NÔ0NÙðK%    ðPò    JˆCܐ3‹x˜+Ó%Ø—
‘
˜D×,Ñ,Ð-°¼sÀ3»xÑ1GÑHÕIð    Jðˆ ùòWsÁ#G3có\—ddlm}t|jj    |dfd««S)z«
        Return number of times this row was repeated
        Repeating an empty row appeared to be a common way
        of representing sparse rows in the table.
        r©ÚTABLENSznumber-rows-repeatedé©Úodf.namespacesrdÚintÚ
attributesÚget)rr`rds   rrNzODFReader._get_row_repeatªs)€õ     +ä3—>‘>×%Ñ% wÐ0FÐ&GÈÓKÓLÐLrcó\—ddlm}t|jj    |dfd««S)Nrrcznumber-columns-repeatedrerf)rÚcellrds   rrKzODFReader._get_column_repeat´s'€Ý*ä4—?‘?×&Ñ&¨Ð1JÐ'KÈQÓOÓPÐPrcóT—ddlm}t|«dk(rtjS|j
j |df«}|dk(rt|«dk(ryy|€ |jS|d    k(r:t|j
j |d
f««}t|«}||k(r|S|S|d k(r(|j
j |d
f«}t|«S|d k(r|j|«S|d k(r(|j
j |d
f«}t|«S|dk(r2|j
j |df«}tj|«S|dk(r<tjt|««}tt|j««S|j!«t#d|›«‚)Nr)ÚOFFICENSz#N/Az
value-typeÚbooleanÚTRUETFÚfloatr]Ú
percentageÚstringÚcurrencyÚdatez
date-valueÚtimezUnrecognized type )rgrnÚstrÚnpÚnanrirjr'rqrhÚ_get_cell_string_valueÚpdÚ    Timestamprrrvr9r:)rrlrnÚ    cell_typeÚ
cell_valueÚvalÚstamps       rrJzODFReader._get_cell_value¹s‹€Ý+ä ˆt‹9˜Ò Ü—6‘6ˆMà—O‘O×'Ñ'¨°<Ð(@ÓAˆ    Ø ˜    Ò !ܐ4‹y˜FÒ"ØØØ Ð Ø×#Ñ#Ð #Ø ˜'Ò !ä˜tŸ™×2Ñ2°H¸gÐ3FÓGÓHˆJܐj“/ˆCؐjҠؐ
ØÐ Ø ˜,Ò &ØŸ™×,Ñ,¨h¸Ð-@ÓAˆJܘÓ$Ð $Ø ˜(Ò "Ø×.Ñ.¨tÓ4Ð 4Ø ˜*Ò $ØŸ™×,Ñ,¨h¸Ð-@ÓAˆJܘÓ$Ð $Ø ˜&Ò  ØŸ™×,Ñ,¨h¸ Ð-EÓFˆJÜ—<‘< 
Ó+Ð +Ø ˜&Ò  Ü—L‘L¤ T£Ó+ˆE䜠§
¡
£ Ó-Ð -à J‰JŒLÜÐ1°)°Ð=Ó>Ð >rcó —ddlm}ddlm}ddlm}ddlm}|«j}|«j}g}|jD]³}    t|    |«r||    j|k(r<t|    jj|dfd««}
|jd|
z«ŒZ|    j|k(rŒj|j|j|    ««Œ‹|jt!|    «j#d    ««Œµd
j%|«S) z„
        Find and decode OpenDocument text:s tags that represent
        a run length encoded sequence of space characters.
        r)ÚElement)ÚTEXTNS)Ú
Annotation)ÚSÚcreú ú
r%)Ú odf.elementr‚rgrƒÚ
odf.officer„Úodf.textr…rArHÚ
isinstancerhrirjÚappendrzrwÚstripÚjoin) rrlr‚rƒr„r…Úoffice_annotationÚtext_sr]ÚfragmentÚspacess            rrzz ODFReader._get_cell_string_valueàs܀õ
    (Ý)Ý)Ýá&›L×.Ñ.ÐÙ“—‘ˆàˆàŸ™ò     8ˆHܘ( GÔ,Ø—>‘> VÒ+Ü  ×!4Ñ!4×!8Ñ!8¸&À#¸ÈÓ!JÓKFØ—L‘L  v¡Õ.Ø—^‘^Ð'8Ò8Øð
—L‘L ×!<Ñ!<¸XÓ!FÕGà— ‘ œS ›]×0Ñ0°Ó6Õ7ð     8ðw‰wu‹~Ðr)NN)rúFilePath | ReadBuffer[bytes]rzStorageOptions | Nonerz dict | NoneÚreturnÚNone)r•ztype[OpenDocument])rr”r•r)r•rw)r•z    list[str])r5rh)r+rwrC)rQz
int | Noner•zlist[list[Scalar | NaTType]])r•rh)r•zScalar | NaTType)Ú__name__Ú
__module__Ú __qualname__rÚpropertyr r#r'r2r6r<rarNrKrJrzÚ __classcell__)rs@rrrsÆø„ð
26Ø%)ð    
à8ð
ð/ð
ð#ð    
ð
 
õ 
ð0òóðð
9Ø">ð9à    ó9ðòóððò8óð8óó 4ð59ðBØ'1ðBà    %óBóHMóQó
%?÷Nrrr)Ú
__future__rÚtypingrrÚnumpyrxÚpandas._typingrrrr    Úpandas.compat._optionalr
Úpandas.util._decoratorsr Úpandasr{Úpandas.core.shared_docsr Úpandas.io.excel._baser rrÚpandas._libs.tslibs.nattyperrr&rrú<module>r¦sdðÝ"÷ó
÷óõ ?Ý'ãÝ0å1áÝ-å3ñ\Ð"3Ñ4Ô5ô^ Ñ/ó^ó6ñ^r