【问题标题】:Lining up DNA base pairs in an array在阵列中排列 DNA 碱基对
【发布时间】:2011-10-10 04:52:47
【问题描述】:

尝试将一系列碱基对导入数组。

我想要['AA','AT','AG','AC'...]的形式

这是我的代码:

paths = [str(x[4:7]) for x in mm_start]

paths
['A A', 'A T', 'A G', 'A C', 'T A', 'T T', 'T G', 'T C', 'G A', 'G T', 'G G', 'G C', 'C A', 'C T', 'C G', 'C C']      

字母之间有空格! 此条命令也无济于事。

paths = str(paths).replace(" ","")

paths
"['AA','AT','AG','AC','TA','TT','TG','TC','GA','GT','GG','GC','CA','CT','CG','CC']"

现在我在这个数组的开头和结尾得到一个 (")。

欢迎提出任何想法!

文本文件的碱基对布局

1 2 3 4 A A
1 2 3 1 A T
...

谢谢

【问题讨论】:

    标签: python arrays


    【解决方案1】:

    您正在将列表转换为字符串。你真的想说

    paths = [pair.replace(" ", "") for pair in paths] 
    

    遍历字符串列表中的每一对并删除空格,而不是将整个列表转换为字符串。

    【讨论】:

    • 谢谢@Rafe。这很有帮助!
    【解决方案2】:
    paths = str(paths).replace(" ","")
    

    当然它不起作用,因为您将 list 转换为字符串(并且您没有将其转换回来)。您需要做的是将replace 应用于列表的每个元素,而不是应用于列表的字符串表达式。

    paths = [str(x[4:7]).replace(" ","") for x in mm_start]
    

    (这只是众多方式中的一种)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-10
      • 2019-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多