2017-04-06 3 views
1

ここは私の機能です。このすべてを1行に印刷しようとしています。 >Python文字列の書式設定で、印刷文にランダムな改行を作成する

config::$var['pdf']['meta']['staff_member_name'] 
= ";" 

コンソールの新しい行に文字列プリントの= ";"部分何らかの理由で - ここ

が出力されますか?

これはまったく個人的なハッキングであり、繰り返し仕事の必要性を助けるため、私は何も気にしません。

は、ここに私の関数である - あなたが "y" の変数はそれで新しいラインを持っているようだ>

def auto_pdf_config(file): 
    with open(file) as f: 
     content = f.readlines() 
     kill = " = array(" 
     start = "config::$var['intake']" 
     new_line = "" 
     for line in content: 
      if kill not in line: 
       pass 
      elif start in line: 
       new_line = line 
       x = new_line.replace(kill, "") 
       y = x.replace(start,"") 
       pdf_end = ' = ";" ' 
       z = "config::$var['pdf']['meta']{}{}".format(y,pdf_end) 
       print(z) 

答えて

1

。それを取り除くことができます。

y = x.replace(start,"").strip('\n') 
+0

を、すべての 'line'は、最後の例外を除いて、最後に' \のN 'を持っています。また、基本的な 'strip()'は改行を取ります(他の空白も必要です)。 – TemporalWolf

+0

ありがとうございました! Pythonに新しく、このメソッドを見逃しました。魅力のように働いた – Willy

+0

@ワイリー幸せコーディング:) – galaxyan

0

X = new_line.replace( "殺す")、Y = x.replace(開始 "")、およびNEW_LINEコンテンツのラインであるが、それが終了行記号(\ n)を含んでいるので、それはですpdf_endの前になぜこのendlineシンボルが追加されるのですか? yからendlineのシンボルを削除するだけです。 あなたはそのような何か行うことができます:あなたは、ファイルを経由しているときに、より一般的に

y = y.strip('\n') 
関連する問題