编程语言
首页 > 编程语言> > python中生成指定序列的反向互补序列

python中生成指定序列的反向互补序列

作者:互联网

 

001、方法1:

root@PC1:/home/test# ls
test.py
root@PC1:/home/test# cat test.py               ## 测试程序
#!/usr/bin/python

out_file = open("result.txt", "w")
str1 = "AAAACCCGGT"                            ## 转换序列
str1 = str1.upper()[::-1]
result = []
for i in str1:
    if i == "A":
        result.append("T")
    elif i == "T":
        result.append("A")
    elif i == "C":
        result.append("G")
    elif i == "G":
        result.append("C")
print("".join(result), end = "\n", file = out_file)

out_file.close()
root@PC1:/home/test# python test.py
root@PC1:/home/test# ls
result.txt  test.py
root@PC1:/home/test# cat result.txt             ## 转换结果
ACCGGGTTTT

 

002、方法2

root@PC1:/home/test# ls
test.py
root@PC1:/home/test# cat test.py              ## 测试程序
#!/usr/bin/python
out_file = open("result.txt", "w")
str1 = "AAAACCCGGT"
str1 = str1.upper()[::-1]

trantab = str.maketrans("ATCG", "TAGC")
result = str1.translate(trantab)                 ## 利用字符串的内置函数 translate函数实现
out_file.write(result + "\n")

out_file.close()
root@PC1:/home/test# python test.py
root@PC1:/home/test# ls
result.txt  test.py
root@PC1:/home/test# cat result.txt              ## 转换结果
ACCGGGTTTT

 

3、方法3

root@PC1:/home/test# ls
test.py
root@PC1:/home/test# cat test.py                         ## 测试程序
#!/usr/bin/python

out_file = open("result.txt", "w")
str1 = "AAAACCCGGT"
str1 = str1.upper()[::-1]
dict1 = {"A":"T", "T":"A", "C":"G", "G":"C"}

result = "".join([dict1[k] for k in str1])
out_file.write(result + "\n")

out_file.close()

root@PC1:/home/test# python test.py                      ## 执行程序
root@PC1:/home/test# ls
result.txt  test.py
root@PC1:/home/test# cat result.txt                      ## 运行结果
ACCGGGTTTT

 

4、方法4

root@PC1:/home/test# ls
test.py
root@PC1:/home/test# cat test.py                     ## 测试程序
#!/usr/bin/python

out_file = open("result.txt", "w")
result = ""
str1 = "AAAACCCGGT"
dict1 = {"A":"T", "T":"A", "C":"G", "G":"C"}
for i in str1:
    result = dict1[i] + result

print(result, end = "\n", file = out_file)

out_file.close()
root@PC1:/home/test# python test.py                  ## 执行程序
root@PC1:/home/test# ls
result.txt  test.py
root@PC1:/home/test# cat result.txt                  ## 执行结果
ACCGGGTTTT

 

标签:py,互补,python,PC1,test,result,序列,home,root
来源: https://www.cnblogs.com/liujiaxin2018/p/16597460.html