用python去除文件中的空格 || Tab || 回車

  在最近的開發工作中,爲了應付比賽趕進度,服務端的json文件都是人工寫的,寫完之後發現格式都是十分規整,易於人閱讀的json,但是客戶端請求不需要那些爲了格式而在json裏面添加的空格、tab、回車等等沒用的字符,遂用python寫一腳本,去除文件中的空格、回車、換行。

  原json文件:

{
	"amount" : "2",
	"content" : [
								{   "category_id" : 0,
									"name" : "古典文學",
									"category_json_url" : "http://172.16.242.14:8080/source/history/history.json" 
								}
								,
								{ 
									"category_id" : 1,
									"name" : "流行音樂",
									"category_json_url"  : "http://172.16.242.14:8080/source//popmusic/popmusic.json"
								}
				]
}	

  用腳本處理後的文件:

{"amount":"2","content":[{"category_id":0,"name":"古典文學","category_json_url":"http://172.16.242.14:8080/source/history/history.json"},{"category_id":1,"name":"流行音樂","category_json_url":"http://172.16.242.14:8080/source//popmusic/popmusic.json"}]}

  下面上代碼:

def stripFile(oldFName,newFName):
    '''remove the space or Tab or enter in a file,and output to a new file in the same folder'''
    fp = open(oldFName,"r+")
    newFp = open(newFName,"w")
    for eachline in fp.readlines():
        newStr = eachline.replace(" ","").replace("\t","").strip()
        #print "Write:",newStr
        newFp.write(newStr)
    fp.close()
    newFp.close()
if __name__ == "__main__":
    oldName = raw_input("input file name:")
    nameList = oldName.split(".")
    newName = "%s%s%s" % (nameList[0],"_new.",nameList[1])
    stripFile(oldName,newName)
    print "finish output to new file:",newName



  使用腳本時,如果腳本文件和要處理的文件在同一目錄下,則直接輸入文件名,如果不在,需要輸入文件的完整路徑。

  記得聽Cliff說過,程序員就要有一個批量處理的意識,要學會發揮機器的力量,感覺還是很對的。

  另外發現一篇說明python字符串拼接效率問題的文章,鏈接如下:http://www.cnpythoner.com/post/67.html

發佈了52 篇原創文章 · 獲贊 63 · 訪問量 38萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章