我正在分析一個RNA序列,我需要密碼子。我首先需要我的核苷酸字符串分隔成三對的列表,但我必須給我的功能,要麼始於指數1,2讀取字符串reading_frame參數,或3如何從索引0,1或2開始每隔三個索引分割一個字符串?
我做了這個代碼和不知道爲什麼它不起作用,每當我爲任何索引執行操作時,都會得到一個不完整的列表。
sequence = self.sequence.upper()
split_sequence = []
while len(sequence) >= 3:
split_sequence.append(sequence[reading_frame:reading_frame + 3])
reading_frame = reading_frame + 3
sequence = sequence[reading_frame:]
return split_sequence
我也試着使用條件和正則表達式,但無法弄清楚我會怎麼做索引(reading_frame)正則表達式1和2
if reading_frame == 0:
split_sequence = re.findall(r'...', sequence)
if reading_frame == 1:
split_sequence = re.findall(r'', sequence)
if reading_frame == 2:
split_sequence = re.findall(r'', sequence)
就如何解決這些任何想法方法,還是有更簡單的方法來做到這一點? 謝謝!
你可以舉一個輸入字符串的例子,你想如何分裂? – user3030010
[分割python字符串每隔n個字符?]的可能的重複(http://stackoverflow.com/questions/9475241/split-python-string-every-nth-character) – coder