2017-06-24 2 views
0

私のWindows 10(64-bit)システムでPython 2.7を使用しています。今、私はresult.csvファイルにこの結果を書きたいpythonを使用して結果をcsvファイルに書き出す際の問題2.7

'abcd' 
'wxyz' 

- :私はそれのように結果を示す実行文字列strのを、持っています。だから私はこの次のpythonスクリップを書いた: -

import csv 
with open('result.csv', 'w') as csv_file: 
    csv_write = csv.writer(csv_file) 
    csv_write.writerow([str]) 

しかし、私はこのスクリプトを実行するたびに、私はresult.csvファイルに WXYZのみ探しています。

この問題をお手伝いします。 ありがとうございます。

+1

'str'のような組み込み関数の後にオブジェクトの名前を決して入れてはいけません –

+1

スクリプト全体を投稿できますか?少しの情報が欠落しているようです –

+0

あなたのコメントに基づいて、ここの完全な画像。私はいくつかのコードが不足していると思う... – pstatix

答えて

1

Python 2.7 csvは、'b'の書き込みモード(Python 3の場合は'w')が好きです。

例:クイック:writer()

import csv 

# read current rows in csv and return reader object 
def read(_f): 
    with open(_f, 'rb') as f: 
     reader = csv.reader(f, delimiter=',') 
    return reader 

# writes the reader object content 
# then writes the new content to end 
def write(_f, _reader, _adding): 
    with open(_f, 'wb') as f: 
     writer = csv.writer(f, delimiter=',') 
     for row in _reader: 
      writer.writerow(row) 
     for row in _adding: 
      writer.writerow(row) 


strings = [] 
s1 = 'abcd' 
s2 = 'wxyz' 
strings.append(s1) 
strings.append(s2) 

csvf = r"C:\path\to\my\file.csv" 

content = read(csvf) 

write(csvf, content, strings) 

例を供給するために、行のリストを構築するためにreader()使用:例

import csv 

strings = [] 
s1 = 'abcd' 
s2 = 'wxyz' 
strings.append(s1) 
strings.append(s2) 

csvf = r"C:\path\to\my\file.csv" 

with open(csvf, 'wb') as f: 
    w = csv.writer(f, delimiter=',') 
    for s in strings: 
     w.writerow(s) 

を提出するstring事前構築されたリスト追記

import csv 

strings = [] 
s1 = 'abcd' 
s2 = 'wxyz' 
strings.append(s1) 
strings.append(s2) 

csvf = r"C:\path\to\my\file.csv" 

with open(csvf, 'ab') as f: 
    writer = csv.writer(f, delimiter=',') 
    for s in strings: 
     writer.writerow(s) 

参照:Python 2.x

reader()writer()オブジェクトは、開口時'b'フラグを必要としました。これは、モジュールが回線終了を処理する方法の結果でした。

reader()writer()のオブジェクトをnewline=''で開くように変更しました。しかし、回線終端はまだ処理されます。

また、this投稿とthat投稿があります。

+0

情報@pstatixありがとう。しかし、私はstrから 'abcd'と 'wxyz'を抽出し、それをcsvファイルに書きたいと思います。どうすればいいですか? – user3766871

+0

@ user3766871 "strからの抽出..."とはどういう意味ですか? 'str'という変数があり、それらの値がその中にある場合、それはまったく別の質問です。 – pstatix

関連する問題