0

xlrd を使用して Excel ファイルを読み取り、データをファイルに書き込んでいます。今私が直面している問題は、ファイルでExcelから整数データをfloatとして取得し、000123のようなものがある場合、123に切り捨てられることです.

セルから値を読み取り、ファイルに同じ形式で書き込みたい。Excel セルをどこでもテキストとして読み取る方法はありますか?

これを行う適切な方法を提案してください。

4

1 に答える 1

0

か、または何か他のものかcell.ctypeどうかを確認できます。XL_CELL_TEXTXL_CELL_NUMBER

(他の可能な細胞型: XL_CELL_EMPTY, XL_CELL_DATE, XL_CELL_BOOLEAN, XL_CELL_ERROR, XL_CELL_BLANK)

セルのタイプXL_CELL_TEXTが「000123」の値を取得できるはずです。

セルのタイプが の場合、おそらく「123」になりますXL_CELL_NUMBERcell.valueExcel シートに表示される '00123' の値は、Excel シートで設定された書式設定の結果である可能性があります。この書式設定情報は、シートからも抽出できるはずです。フォーマット情報を抽出した後、フォーマット情報と元の数値「123」を組み合わせることで、値「000123」を再現できるはずです。

ただし、必要なすべての書式設定情報を xlrd モジュールで抽出できるかどうかはわかりません。

ドキュメントを参照してください: https://secure.simplistix.co.uk/svn/xlrd/trunk/xlrd/doc/xlrd.html

またはソース ソース: https://github.com/python-excel/xlrd/blob/master/xlrd

于 2013-01-22T09:56:24.050 に答える