python打開dat文件
『壹』 python 用shelve讀取.dat文件中文亂碼問題
「得到的結果是'xb2xe2xcaxd4,並不是我想要的中文」 =》其實,你看到的'xb2xe2xcaxd4『,就已經是你想要的中文了。只不過是GBK編碼的,所以顯示出來的是'測試'這兩個中文字元所對應的GBK編碼的內部的值而已
如果你想要顯示出中文字元,而非內部值的話,可以,先將其轉換為Unicode,就可以看到中文了:
decodedName=Database['name'].decode("GBK")
print"decodedName=",decodedName#decodedName=測試註:
1.不要用那個IDLE,不好用,容易讓你誤解。
2.在直接在cmd下測試即可。
更多的,極其詳盡的解釋,我專門為你寫了教程了。你一看就懂了:
【整理】Python中實際上已經得到了正確的Unicode或某種編碼的字元,但是看起來或列印出來卻是亂碼
(google搜標題即可找到我的帖子了)
『貳』 學習python時看到dat文件,請問那是什麼
數據文件的通用後綴。將後綴名設為.dat表明這個文件是用來存放數據的。至於數據用什麼格式編碼不知道。你可以用notepad試著打開看一下。
『叄』 python將txt導入到excel
你說的是使用python讀取dat,txt類型文件或excel文件吧,這里我不清楚dat類型文件是什麼類型的文件,數據格式是怎樣的,所以主要講一下如何簡單快捷的讀取txt文件指定的列數據和excel文件指定的列數據,主要用到numpy,pandas這兩個包,這兩個主要做科學計算和數據處理,python處理實驗數據,經常要用到這兩個包,至於dat類型的文件,我提供一種可能的思路,實驗環境win7+python3.6+pycharm,主要步驟如下:
1.讀取txt文件指定列。這里主要用到numpy這個包,以及其包含的loadtxt函數,讀取的前提是txt文件不是完全的雜亂無章,沒有一點格式、結構可循,如果真的是這樣,建議手動調整一下格式,使其盡量保持一定的格式結果,然後再讀取,不然的話,會出現錯誤,我這里新建了一個txt文件,樣本內容如下,每行的數據以3個空格為間隔,一般情況下,實驗所產生的txt數據都是有一定結構的:
對應讀取的代碼如下,這里以讀取1,3列數據為例,很簡單:
程序運行結果如下,已經成功列印出1,3列數據:
2.讀取excel文件指定的列。這里主要用到pandas這個包,以及其包含的read_excel函數,因為excel數據本來就是有一定格式的,所以讀起來就簡單了許多,這里我新建了一個excel文件,樣本數據如下:
對應讀取的代碼如下,這里以讀取1,3列數據為例,很簡單:
程序運行結果如下,已經成功列印出1,3列數據:
3.至於dat文件的話,這里提供一種可能思路,如果dat文件可以直接用記事打開的話,並且數據可以正常顯示,沒有亂碼的情況下,有一定的格式可循,可以將其看作一個普通文件,使用python的open函數進行讀取,將讀取的數據存儲在一個list列表中,或者使用特定軟體將其轉換成txt或excel文件後,再進行讀取。如果是特殊類型的文件,這個就不好說了,這里就要自己想辦法了。
至於後面如何進行可視化繪圖,我就不多說了,像matplotlib等數據可視化包都可以。至此,就完成了這3中類型文件的讀取,總的來說,實現起來不難,都有現成的包可直接利用,方便了許多,當然你也可以用其他包或者自己來實現,這個就因人而異了,只要能正常的讀取實驗數據就行,網上也有這方面的資料,你可以參考一下,希望以上分享的內容能對你有所幫助吧。