作者ian15937 (5+3=1+7)
看板Python
標題Re: [閒聊] 把字串以固定長度分割
時間Fri Nov 13 16:41:25 2020
※ 引述《tsaiminghan (nahgnimiast)》之銘言:
: 把字串以固定長度分割
: '112233445566778899AA' => 以長度2分割
: ['11', '22', '33', '44', '55', '66', '77', '88', '99', 'AA']
def split(s,length):
temp=[]
for i in range(0,len(s)-length,length):
temp.append(s[i:i+length])
temp.append(s[i+length:])
return temp
如果要時間複雜度最低應該就是這樣了
看起來也不是很醜 應該就差不多了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.81.126 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1605256888.A.03D.html
→ Hsins: 那篇文裡面最一開始給出用 list comeprehension 的實現已 11/13 17:53
→ Hsins: 經夠快了. 認真說起來... 你這個函數還多了不必要的操作... 11/13 17:54
→ s860134: "naive implementation" 11/14 10:18
→ ddavid: 這篇比起原本那篇的前兩個方法都可讀性差,重點是時間複雜 11/14 16:49
→ ddavid: 度並沒有變好 11/14 16:50
→ ddavid: 特別是刻意另行處理最後一段(可能是以為不整除時會有問題 11/14 16:52
→ ddavid: )根本是不必要的 11/14 16:52