python テキストファイルの全ての行に共通の置换处理を行う。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python テキストファイルの全ての行に共通の置换处理を行う。相关的知识,希望对你有一定的参考价值。

#! /usr/bin/python
# -*- coding: utf-8 -*-

############################################################
#
# テキストファイルの全ての行に共通の置換処理を行うスクリプト.
#
# 使い方:
# ・19,22行目付近の「置換対象の文字列」「置換後の文字列」を設定.
# ・下記コマンドで実行.
# 		python all_line_replace.py (input_file)
# ・出力ファイル名は「input_file.replace.txt」
#
############################################################

import argparse
import os


# 置換対象の文字列
SEARCH_STRING = '	1000	1	'

# 置換後の文字列
REPLACE_STRING = '	1000	2	'


def exec_argparse():
    '''
    引数をパースした結果を連想配列で返す.
    input_file : 入力ファイルパス
    '''
    parser = argparse.ArgumentParser(description='')
    parser.add_argument('input_file', help='入力するcsvファイル')
    return parser.parse_args()


def replace(input_file):
    '''
    テキストファイルの全ての行に共通の置換処理を行う.
    '''

    # 出力ファイル
    output_file = input_file + ".replace.txt"

    # 出力ファイルの初期化(削除)
    if os.path.exists(output_file):
        os.remove(output_file)

    # 出力ファイルをオープン
    f_output_file = open(output_file, "a")

    # 入力ファイルを開く
    f_input_file = open(input_file, 'r')

    # 1行ずつ処理.
    for line in f_input_file:

        # から始まる行は無視
        if line.startswith('#'):
            continue

        # relevanceを2に置換して出力ファイルに書き込み
        line = line.replace(SEARCH_STRING, REPLACE_STRING)
        f_output_file.write(line)

    f_input_file.close()
    f_output_file.close()

if __name__ == "__main__":

    # 引数をパースしてargsに格納
    args = exec_argparse()

    # 置換
    replace(args.input_file)

以上是关于python テキストファイルの全ての行に共通の置换处理を行う。的主要内容,如果未能解决你的问题,请参考以下文章

python テキストファイル保存

vbscript 指定したファイルの全てのシートについてA1セルを有效にするスクリプト

java 「结束」と入力があるまでテキストファイルに追加书き込みをする

csharp 统一のシーンファイルリストウィンドウ。全てのシーン,ビルド登录シーンを切り替え可。

text カレントファイルのパス表示

111