12

私は python で作業しており、*.ods ファイルを読み取って python 辞書に変換したいと考えています。

キーは最初の列の値になり、値は 2 番目の列の値になります。

どうすればいいですか?使用xlrdしましたが、*.ods ファイルを読み取れません。

4

6 に答える 6

8

いくつかの利用可能なオプション:

  • pyexcel-ods : " ods 形式のデータを読み取り、操作、および書き込むためのラッパー ライブラリ。 " 次の方法でインストールできますpip install pyexcel-ods。私はこのパッケージを使用しており、積極的にメンテナンスされているため、個人的にこのパッケージをお勧めします。

  • py-odftools : " ... ISO 標準 OpenDocument 形式のファイルを分析、変換、および作成するためのツールのコレクション。 " このプロジェクトは 2007 年後半から更新されていません。放棄されたようです。

  • ezodf : " OpenDocumentFormat ファイルを作成/操作するための Python パッケージ。 " 経由でインストール可能pip install ezodf。このパッケージの重大な問題については、以下のコメントの警告を参照してください。

于 2015-04-07T17:14:52.520 に答える
3

ユーザーに [ファイル] > [名前を付けて保存] を求めることもできますが (おそらくご存じのとおり)、これは状況によっては役に立たない場合があります。

libre/openoffice サービスを使用する方がおそらく簡単です。X11をインストールしたり実行したりする必要なく、サーバー上で完全にヘッドレスで実行できるため、クリーンなネイティブ変換が可能になります.

libreoffice --without-x --convert-to csv  filename.ods

詳細については、libreoffice --help (または openoffice --help) を確認してください。これは、os.system()、subprocess.*() などでラップすることもできます (注: Windows では -convert-to を使用してください) 。クイックスターターを含む。

更新: 以前のバージョンの LibreOffice では、--without-x の代わりに --headless が使用されていました。

于 2015-04-08T22:18:41.750 に答える
2

最初に .ODS を csv に変換できますか? 次に、 csvモジュールを使用すると、Python を使用して CSV を解析するのが非常に簡単になります。

于 2011-01-20T08:58:07.843 に答える
2

py-odftools を確認してください。

于 2011-01-20T08:58:50.747 に答える
0

Linux Journalに、Pythonでodsを読み取る方法に関するすばらしい記事があります。Odsファイルは、内部にxmlファイルを含むjuzzipファイルです。xmlファイルを解析してすべてのセルを読み取ることができます。

http://www.linuxjournal.com/article/9347?page=0,2

于 2011-01-20T09:16:14.397 に答える