0

次のようなデータがあります

>P1;gi|467971|gb|AA3.1|

-MASLAALLPLLALLVLCRLDPAQA
QAEPGAGG-LQELALQ---KRGIVE
QCCTSICSLYQLEN---
*
>P1;gi|307072|gb|AAA59179.1|

-MALWMRLLPLLALLALWGPDPAAA
FPK-TR-EAPGAGS-LEGSLQ--KRE
QCCTSICSLYQLENYCN
*
>P1;gi|387059|gb|AAA31.1|

-MALVLALLALWNTNQAFVS-RHLC
FYIPK-DRREG-LQLQ---KRGIVD
QCCTGTCTRHQLQS---
*

Pythonで、これらを次のようなデータに変換するにはどうすればよいですか?

-MASLAALLPLLALLVLCRLDPAQAQAEPGAGG-LQELALQ---KRGIVEQCCTSICSLYQLEN ---、-MALWMRLLPLLALLALWGPDPAAAFPK-TR-EAPGAGS-LEGSLQ--KREQCCTSICSLYQLENYCN、-MALVLALLALWNTNQAFVS-RHLCFYIPK

4

2 に答える 2

0

dataあなたの「ひも」はどこにあるのか不器用な方法:

>>> lines = data.replace('*', ',').splitlines()
>>> ''.join(line for line in lines if line and not line.startswith('>')).rstrip(',')

'-MASLAALLPLLALLVLCRLDPAQAQAEPGAGG-LQELALQ---KRGIVEQCCTSICSLYQLEN ---、-MALWMRLLPLLALLALWGPDPAAAFPK-TR-EAPGAGS-LEGSLQ--KREQCCTSICSLYQLENYCN、-MALVLALLALWNTNQAFVS-RHLCFYIPK

于 2013-02-07T17:28:55.330 に答える
0

データがfile1.txtで利用可能であることを考慮すると、次のコードを使用できます。

file_handle = open(r'C:\Users\kvivek\Desktop\file1.txt', 'r')
fileContent = file_handle.readlines()
file_handle.close()

output = ''
for line in fileContent:
    if ">P1;gi" in line:
        continue
    x = ''.join(line.strip())
    output = output + x

// replace all * with comma and then use strip function used to remove the last comma
finalOutput = output.replace("*",",").rstrip(',')
print finalOutput
于 2013-02-07T17:45:31.877 に答える