在python3中如何把文字轉換為二進位制
阿新 • • 發佈:2020-07-24
在python3中如何把文字轉換為二進位制
在python3中把文字轉換為二進位制的方法:首先修改dirroot為要讀取的資料夾的路徑;然後遍歷所有的資料夾,讀取txt檔案;最後更改newdirroot為新的目錄路徑,程式執行完以後會生成和原來一樣的目錄和dat的二進位制檔案。
當讀取讀大量資料的時候,為了加快讀取的速度,需要將文字檔案轉為二進位制檔案。
python程式碼如下:
#coding:utf-8 #! /bin/python import os import sys import os.path import pickle import struct dirroot = "F:\\feature_train\\" newdirroot="F:\\new\\" for dirnames in os.listdir(dirroot): print ("進入資料夾:" ) #print dirnames for dirname in os.listdir(dirroot+dirnames): #print dirname if dirname.split('.')[1]!='txt': continue file=open(dirroot+dirnames+'\\'+dirname,'r') filename=dirname.split('.')[0]+'.dat' if not os.path.exists(newdirroot+dirnames+'\\'): os.makedirs(newdirroot+dirnames+'\\') fileNew=open(newdirroot+dirnames+'\\'+filename,'wb') lines=file.readlines() for line in lines: curLine=line.split(' ') for i in range(len(curLine)): if len(curLine[i])==0: continue parsedata = struct.pack("f",float(curLine[i])) fileNew.write(parsedata) fileNew.write('\n') fileNew.close() file.close()
使用方法:修改dirroot為要讀取的資料夾的目錄路徑,程式會遍歷所有的資料夾,讀取其中的txt檔案。根目錄下都是資料夾。 newdirroot為新的目錄的路徑,程式執行完以後會生成跟原來一樣的目錄和dat的二進位制檔案。
txt檔案裡為float的格式的資料,可以根據情況修改。