我知道這my_str[1::3]可以讓我以 3 個塊的形式獲得每個第二個字符,但是如果我想獲得每個第二個和第三個字符怎么辦?有沒有一種巧妙的方法可以通過切片來做到這一點,或者我是否需要一些其他方法,比如串列理解加連接:
new_str = ''.join([s[i * 3 1: i * 3 3] for i in range(len(s) // 3)])
uj5u.com熱心網友回復:
我認為使用串列理解enumerate將是最干凈的。
>>> "".join(c if i % 3 in (1,2) else "" for (i, c) in enumerate("peasoup booze scaffold john"))
'eaou boz safol jhn'
uj5u.com熱心網友回復:
為什么不過濾掉第一個專案,而不是只得到第二個和第三個字符?
像這樣的東西:
>>> str = '123456789'
>>> tmp = list(str)
>>> del tmp[::3]
>>> new_str = ''.join(tmp)
>>> new_str
'235689'
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/407617.html
標籤:
上一篇:如何從檔案中讀取資料以進行編程
