我想使用python以“f”的值降序创建一个输出。也就是说,程序计算的“f”的最大值应该先打印,等等......
这是代码。
q=[-5.23,-0.22,3.35,-3.9,0.59,5.76,-3.27,2.95,0.68,-2.65,2.6,1.87,-0.68,2.77,0,-3.92,0,0.06,4.17];
w=[15.1,1.11,-0.85,0.00,-0.47,-4.00,3.63,-2.29,-1.96,1.16,0.00,-4.09,-2.77,-0.27,-2.14,1.86,0,2.32,-2.61];
e=[1.04,0,0,3.91,-0.53,-1.75,1.88,1.88,-0.22,2.81,0,-0.91,1.96,2.62,-2.67,0,0.06,-1.95,0.58,0];
r=[-6.8,0,-2.73,-1.81,1.38,1.76,0,-1.79,4.22,-1.3,-4.13,4.62,0,-0.66,6.2,-1.69,3.12,0.93,0];
import re
i=0;s=0;f=0;k=0;l=0;c=0;
regex = re.compile("(?=(AA[TCG].{20}))")
Str1=raw_input('get::')
l=regex.findall(xy)
for x in range(len(l)):
kl=l[x];c=kl[2:21];n=len(c);rest=kl[21:]
while(i
f=0
if(c[i]=='A'):
s=q[i];
elif(c[i]=='G'):
s=w[i];
elif(c[i]=='C'):
s=e[i];
elif(c[i]=='T'):
s=r[i];
i+=1
f+=s
GC=c.count('G')+c.count('C')
GC_p=GC*100/19
if(f>0 and GC_p>=45 and GC_p<=55):
print '======================================================================'
print ''+c+'-'+rest
print 'Score=',f
print 'GC%=',float(GC_p)
print 'SENSE RNA='+c[::-1]+'-'+rest
print 'ANTI-SENSE RNA='+c.replace('A','U').replace('C','G').replace('G','C').replace('U','A')+'-'+rest
print '======================================================================='
print ('\r\n')
GC=0
k+=1
i=0
h=raw_input('Enter to continue')我试图将f的值附加到列表中并按降序排序。但它只会将f的值放在列表中,并将其打印出来[''],并且整个事物不会被排序。
我需要关于这方面的帮助。谢谢!