ファイル内の#以下コメントの削除

ファイルを一行づつ読み込み、行内に#があったら#以下を削除して表示。
問題点

  • #のコメントにしか対応していない。
  • 「print "#コメントじゃないよ"」のような行でも#以下をコメントと認識してしまう。

[commentDe.py]

#!/bin/env python
# -*- coding: shift_jis -*-
import sys
import re

argv = sys.argv[1]            
for line in open(argv):
    if str(line).count("#"):
        splitline = re.split(r'#',line)
        line = splitline[0] + "\n"
    print line,
files.close()

myScript.pyのコメントを削除してnewScript.pyとして保存する場合。

c:\Python23jp>commentDe.py myScript.py > newScript.py