序列比對演算法

Tybyq發表於2018-12-11

Li的對齊程式碼使用字元列表進行輸入和輸出。 我寫了一個簡單的包裝器來接受字串和輸出字串。

    來自 對齊 匯入 Needleman,Hirschberg

    def  compare(str1,str2):
        seq1 = list(str1)
        seq2 = list(str2)
        對於 演算法 在 [ 的Needleman(),海森堡()]:
            a,b = 演算法。對齊(seq1,seq2)
            print(“”。join(a))
            print(“”。join(b))
            列印()

程式碼插入垂直條以指示為對齊而新增的空格。 這是在Finnegans Wake和模仿Finnegans Ewok的開頭段落中使用Needleman-Wunsch演算法的結果。

    ||| riverrun,過去的Ev | e | 和亞當'|||| s,
    mov | i | er | un,past || new和||||| hope,

    從swe | rv || e of shore |||| 彎曲的
    從s || tr | ike of |||||回到彎曲

    b ||| ay,帶給我們一個共同體
    | jeday,帶給我們一個共同體

    vic | u ||再迴圈回來
    |||盧卡斯的再迴圈回來了

    H | owth Ca || stle |||| 和E | nvi || r | ons。
    | fo |||||| rest || moon and | en || dor。||||

我在上一篇文章中提到我可以很容易地比較前四段,但是我在調整第五段時遇到了一些麻煩。 每個版本的第五段開頭非常相似:

    Bygme | | ster  Fi | nnega | | ñ,的 的
    Bygm | onster  | | 安| | 類似,的 的

    Stutte | | r | | | | | | | ING  手,˚F | 重新| emen '| s
    | | | | | | Throatchokin |  手,為| cemen | 的

    茂- RER,住 在 了 最廣泛的 方式
    茂- RER,住 在 了 最廣泛的 方式

    immarginable  在 他的 rushlit
    immarginable  在 他的 rushlit

    toofar - | | | 回來 的 宅院 前
    toofar |  -  之前回來 用於 消費


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31557424/viewspace-2284843/,如需轉載,請註明出處,否則將追究法律責任。

相關文章