#本题题目及思路不太明确,参考作者:未琢 https://www.bilibili.com/read/cv4368405 出处:bilibili
import re
#读去fasta
with open('../examples/ros_bio26_PMCH.txt') as f:
file = f.readlines()
table = {}
for line in file:
line = re.sub(r'\n', '', line)
m = re.match(r'^>.*', line)
if m:
name = m.group()
table[name] = ''
else:
table[name] += line
for v in table.values():
seq = v
#进行阶乘
anum = seq.count('A')
gnum = seq.count('G')
total = 1
while anum >= 1:
total *= anum
anum -= 1
while gnum >= 1:
total *= gnum
gnum -= 1
print(total)