2013-01-22 24 views
0

我正在使用xlrd讀取excel文件並將數據寫入文件。現在我面臨的問題是,在文件中,我從Excel中獲取整數數據爲浮點數,並且在其中像000123那樣將其截斷爲123.使用python從excel中讀取

我想從單元格中讀取值並將其寫入相同格式在文件中。 有沒有一種方法可以將excel單元格作爲文本隨處讀取?

請建議正確的方法來做到這一點。

+0

0票下來 \t 請參考以下鏈接。這可能有所幫助:) http://scienceoss.com/read-excel-files-from-python/ http://www.python-excel.org/ http://michalisavraam.org/2009/06/manipulating-excel-files-using-python-part-1-reading-files/ 嘿,它更適合首先搜索查詢,然後把問題放在這裏。 –

+0

如果xls中的數據處於正確的'文本'格式,那麼'00123'它被正確讀取並寫入'.txt'文件 – avasal

+0

仍然問題沒有解決....是否有人有一個示例腳本,將提取excel細胞,因爲它存在那裏。 –

回答

0

如果是XL_CELL_TEXTXL_CELL_NUMBER或其他東西,您可以檢查cell.ctype

(其他可能celltypes:XL_CELL_EMPTY, XL_CELL_DATE, XL_CELL_BOOLEAN, XL_CELL_ERROR, XL_CELL_BLANK

如果您的電池是XL_CELL_TEXT型的,那麼你應該能夠得到的「000123」的值。

如果您的手機是XL_CELL_NUMBER類型,那麼您的cell.value可能是'123'。可以在Excel工作表中看到的'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