今天應同事要求寫了一個把二進制數據前面補零,使數據全部對齊的腳本。
原本的數據的一行比如: 101010
補齊後爲: 00101010
具體實現方法如下:
if os.path.isdir(path3):
path4 = os.listdir(path3)
for path5 in path4:
if path5.find("ori")>=0 or path5.find("res")>=0:
file = os.path.join(path3,path5)
fread = open(file,"r",encoding='utf-8')
lines = fread.readlines()
fread.close()
i = 0
for line in lines:
lines[i] = line.zfill(9)
i = i+1
fwrite = open(file, "w", encoding='utf-8')
lines = fwrite.writelines(lines)
fwrite.close()
首先把文件名和文件夾路徑拼接起來,組成一個文件的絕對路徑;
然後把所有數據read到lines中
接着 在循環中依次把每一行的數據用.zfill補齊爲8位二進制數, 所傳的參數爲9是因爲每一行還有一個換行符“\n”。
最後的效果如下圖: