1. 程式人生 > >文字處理---行未新增逗號和引號

文字處理---行未新增逗號和引號

現有檔案內容如下:

這裡寫圖片描述

現在需要把檔案中的每一行上加上引號,並在行尾新增逗號, 即如下效果:

這裡寫圖片描述

”瑞士軍刀“ python 指令碼上場。

import os

with open('input.txt', 'rb') as lines:
     with open('output.txt', 'wb') as outfile:
        for line in lines:
            line = '"' + line.replace(os.linesep, "") + '",' + os.linesep
            outfile.write(line)

不算空行,6行程式碼。

* update:2017.09.10 *
感謝@dsw0214評論,指出了使用unix 工具可以更方便地完成工作。

awk, sed 和 xargs 這些Unix工具可以方便地處理這種任務。平日工作中,類似這種簡單地文字處理任務基本上是使用Unix工具在終端上直接完成的,很少寫一個python指令碼去處理,比起一行命令,python指令碼還是有些複雜。

  • sed
cat input.txt | sed 's/^/"/;s/$/",/'
  • awk
cat input.txt | awk '{print "\""$0"\","}'
  • xargs
cat input.txt | xargs printf
'"%s",\n'