2017-04-25 124 views
-3

这里是我的代码:将数据导出为CSV文件?

string = 
"""MNRGVPFRHLLLVLQLALLPAATQGKKVVLGKKGDTVELTCTASQKKSIQFHWKNSNQIK 
ILGNQGSFLTKGPSKLNDRADSRRSLWDQGNFPLIIKNLKIEDSDTYICEVEDQKEEVQL 
LVFGLTANSDTHLLQGQSLTLTLESPPGSSPSVQCRSPRGKNIQGGKTLSVSQLELQDSG 
TWTCTVLQNQKKVEFKIDIVVLAFQKASSIVYKKEGEQVEFSFPLAFTVEKLTGSGELWW 
QAERASSSKSWITFDLKNKEVSVKRVTQDPKLQMGKKLPLHLTLPQALPQYAGSGNLTLA 
LEAKTGKLHQEVNLVVMRATQLQKNLTCEVWGPTSPKLMLSLKLENKEAKVSKREKAVWV 
LNPEAGMWQCLLSDSGQVLLESNIKVLPTWSTPVQPMALIVLGGVAGLLLFIGLGIFFCV 
RCRHRRRQAERMSQIKRLLSEKKTCQCPHRFQKTCSPI""" 

for n in range(len(string)-16): 
    if len(string[n:n+16]) == 16: 
     print(string[n:n+16]) 
    else: 
     break 

我希望能够再循环的结果写入到CSV文件。 我该怎么做?

+1

阅读[文档](https://docs.python.org/2/library/csv.html) –

+0

阅读文档不是很有帮助。已经阅读它们,因为我不明白,我在这里提问。 – Aisle

+0

CSV文件是由数据行组成的文本文件,其中每行由一个或多个数据字段组成,每个字段由一个字符分隔(分隔)逗号','。请[编辑]你的问题,描述你喜欢的分隔符和每行的字段应该是什么 - 这不能从它当前包含的代码中确定。 – martineau

回答

0

试试这个:

>>> def chunks(f, n): 
... for i in range(0, len(f), n): 
...  yield f[i:i+n] 
... 
>>> with open('file.csv', 'w') as w: 
... for row in chunks(s.replace('\n',''), 16)): 
...  w.write('{}\n'.format(row)) 
... 
>>> 
0
import csv 
def write_into_csv_file(file_path,array): 
    with open(file_path, 'wb') as f: 
    writer = csv.writer(f) 
    writer.writerows(array) 
string = 'sjhdfakjhdfkajhdfakjhdfakjfhaksjfhasdfkjaskjfh' 
ls=[] 
for n in range(len(string)-16): 
    if len(string[n:n+16]) == 16: 
    ls.append(string[n:n+16]) 
    print(string[n:n+16]) 
else: 
    break 
write_into_csv_file('hello.csv',ls) 

希望这会有所帮助。

+0

谢谢你真的想要帮助! 由于某些原因,当我将文件路径放入时,它不喜欢它? def write_into_csv_file(“/ home/chris/Desktop/BioPythonWork”,array): – Aisle

+0

其中是文件名'something.csv'? –