[爆卦]python str取代是什麼?優點缺點精華區懶人包

為什麼這篇python str取代鄉民發文收入到精華區:因為在python str取代這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者iyaicharles (0.0)看板Python標題Re: [問題] 比較並取代字串的文字時間...


※ 引述《eric2853 (eric)》之銘言:
: 大家好
: 我是一個剛學python沒多久的初學者
: 因為本身是生物相關背景 所以未來想利用python做一些比較跟計算
: 例如我想要比較兩個DNA序列中 有哪些不一樣的地方
: 若是序列相同 則將他取代成"."
: 例如
: a = "atcgatcgaaa"
: b = "atccagcgaac"
: 則print出 兩段序列
: "...g.t....a"
: "...c.g....c"
: 以下是我的練習code:
: a = "atcgatcgaaa"
: b = "atccagcgaac"

這邊for的用法有問題 python迴圈可以用集合的概念來想

for [element] in [set]:
#....


碰到不熟的語言 你可以用print去確認你的code到底發生了什麼事

for i in a[i]:
print (i) # print element in set a[i]


: for i in a[i]: #利用元素位置去找


你似乎不太清楚i變數到底代表什麼


: if a[i] == b[i]: # 你在這邊把i當成數字


: c = a.replace(i,".") # 你在這邊把i當char
: d = b.replace(i,".")


另外我不建議你使用replace,他會取代複數個字




: print(c,d)
: 可是都會出現錯誤代碼 string indices must be integers
: 我其實看不太懂他想表達的意思
: 請問各位前輩我該如何改我的code
: 非常謝謝大家


最後附上弱弱的code

a = "atcgatcgaaa"
b = "atccagcgaac"

a_list = list(a) # List是python很基礎的結構 建議熟悉它
b_list = list(b) # 轉成List是因為list才能作assign的操作 (a_list[i] = '.')

for i in range(len(a)): # 在這邊我把i當數字,請注意a長度必需與b相等
if a_list[i] == b_list[i]:
a_list[i] = '.'
b_list[i] = '.'

a = "".join(a_list) # 將list轉回string
b = "".join(b_list)
print(a)
print(b)
















--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.37.178.157
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1457457862.A.260.html
eric2853: 其實我剛剛在自己練習時有發現我i那邊搞錯 主要是數字 03/09 01:46
eric2853: 跟字串的不同 不過我的主要問題還是在如何取代 真的非常 03/09 01:46
eric2853: 感謝你詳細的說明 我還太初學 基礎要好好打了 再次謝謝 03/09 01:46
eric2853: 你 03/09 01:46
tiefblau: range(min(len(a), len(b))) 03/09 02:09
bibo9901: "".join( u if u == v else "." for u,v in zip(a,b) ) 03/09 15:04
s06yji3: 樓上的條件反了樓上的條件反了 03/10 11:24
Ziom: 也可以直接用字串型式來處理 03/10 20:31
Ziom: a = "atcgatcgaaa" 03/10 20:31
Ziom: b = "atccagcgaac" 03/10 20:31
Ziom: aa = "" 03/10 20:32
Ziom: bb = "" 03/10 20:32
Ziom: for i in range(len(a)): 03/10 20:32
Ziom: if a[i] == b[i]: 03/10 20:32
Ziom: aa += "." 03/10 20:32
Ziom: bb += "." 03/10 20:32
Ziom: else: 03/10 20:33
Ziom: aa += a[i] 03/10 20:33
Ziom: bb += b[i] 03/10 20:33
Ziom: print aa 03/10 20:33
Ziom: print bb 03/10 20:33
IKAFIRE: 樓上開銷略大,join較佳 03/10 23:10
Sunal: bibo9901 的解法不錯.... 03/11 00:08

你可能也想看看

搜尋相關網站