• 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
  • 相关阅读:
    [GoogleAppEngine]编译问题-locale zh_CN
    [Android]Webview中JS接口调用Java-版本问题
    [HTTP基础]3. HTTP链接
    [WebView]简单总结
    [HTTP基础]1.网络开发必备的HTTP协议知识
    [HTTP基础]2.Http和Socket区别
    [HTTP]Android抓包方法(Wireshark)
    [Android]Process&Thread-基本原理
    [Android]Thread两种实现方法
    [Android]消息队列模型——Thread,Handler,Looper,Massage Queue
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/16597460.html
Copyright © 2020-2023  润新知