编程反向
发布时间: 2025-03-03 05:39:19
‘壹’ python编程,获取一段序列的反向互补序列,需要多种方法
lt='CATGCATCGT'
def func1(liststr):
t=list(liststr);d=[]
dct={'A':'T','T':'A','C':'G','G':'C'}
for x in range(len(t)):
d.append(dct[t.pop()])
return d
其他的都简单,1.直接字符串反向处理,再逐一翻译;2.用正负数来处理,这个对于大量的任务可以提高效率;3.两遍处理,True、False开关;4.列表内替换,然后反向;5.成对换位,不过效率低下; 6.还有就是直接的字符串替换,然后一个切片s[::-1]就OK了 ;
lt='CATGCATCGT'
lt=lt.replace('A','{A}').replace('T','{T}').replace('C','{C}').replace('G','{G}')
result=lt.format(A='T',T='A',C='G',G='C')[::-1]
‘贰’ 反汇编与逆向编程的区别
反汇编只是按将010二进制码这样的目标码分析解释成Assembler ,所以我们叫DisAssembler,当然这与教科书上的汇编语言是不同的,这是由编译器优化生成的目标代码,而反汇编只是将通过如intel 指令手册就可以将之转换出来,而逆向编程是在反汇编的基础上,然后分析他的逻辑,从而用高级语言或是流式语言进行二次编程,比较常见的,就是使用嵌入asm(c语言),再则因为汇编的条件啥的其实基本都在goto,所以你用老一套的跟,只到你跟出自己的思路来了,那就真的就是逆向编程了,不过现在多是以上两种,当然高手我就没资格评论了.
热点内容