2016-08-13 9 views
-1

で特定の文字の交換:私はそれが見えるようにしたいとして、私はデータのテキストファイルを持っているのpython

a Next-hop=path 
a 10.230.2.91 
a Next-hop=path 
a 10.229.5.239 
a 10.229.6.239 

12  Next-hop=path 
12  10.230.2.91 
55  Next-hop=path 
55  10.229.5.239 
55  10.229.6.239 

これは、ネクストホップ=パスがあるたびに、意味テキストファイルの最初の列は、12,55のような行を持ち、元のテキストファイルの "a"を置き換える別のテキストファイル "numbers"から12,55のようなデータを読み込む必要があります。 Pythonでこれを行うにはどんな助け?ありがとう!あなたが最初にする必要があり

+0

に新しいコンテンツを書く古い値

if contents[1] == "Next-hop=path": replacementString = read_replacement_string() contents[0] = replacementString 

と交換してください。また、説明が明確でないため、2番目の入力ファイルのサンプルを投稿してください。カンマで区切られた単一の行ですか、または2番目のファイルに複数の行がありますか? – mhawke

+0

@mhawke 2番目のファイルに複数の行がある場合、別の "next-hop = path"が出現するまで、2番目のtxtファイルから1行を選び、最初に入れたい。 – alisha

+0

これは1行に1つの番号ですか?例とコードを投稿してください。 – mhawke

答えて

0

がファイル

f = open('filename.extension') 
lines = f.readlines() 

を読んで、あなたは行を反復処理し

for cur_line in lines: 
    contents = cur_line.split() 

を使用してaNext-hop=path を抽出し、第2の列agains内の文字列を比較することができますあなたのマーカー。置換文字列変数を導入し、Next-hop=pathが出現するたびに変更してください。 は、それ以外の場合はちょうどそのこれまでのところ、あなたのコードを投稿してくださいファイル

+0

あなたのコードはすばらしく見えますが、ファイルから置換文字列を読み込む必要があります。この目的のために2つのforループをどのように使うことができますか?ありがとう! – alisha

+0

最初のファイルのように2番目のファイルを読み込み、内容を前処理して置換文字列のリストを取得することができます。上記のコードを使用して のような内容を入れようとする代わりに、 'replacementStringList [rep_index]'のインデックスを作成するだけです: rep_index + = 1 ' このコンテンツを次のように置き換えてください。 コンテンツ[0] = replacementStringList [rep_index]' – meetaig

+0

おかげさまで助けてくれてありがとうございます! – alisha

関連する問題