最近ちょこちょこPythonを触る機会が多くなってきたのだが、処理の中でgrepやawkのように行の抽出をさせたいことがある。 Subprocessでgrepとかawkを呼び出すのはかっこ悪いし、Python内で処理を完結させたいというのもあったので少し調べてみた。 1.指定した文字列を含む行を抽出 1-1.基本的な抽出方法 Pythonでgrepのような処理を行うには、find('文字列')を用いてその文字列を含む数を指定することで抽出が可能だ。 以下、記述例。 # -*- coding: utf-8 -* import sys ld = open(sys.argv[1]) lines = ld.readlines() ld.close() for line in lines: if line.find("文字列") >= 0: print line[:-1] [root@BS-PUB-