デブのDEV日記

港区で働くデブによるDEV(DEVELOPE)やデブ飯の記録。そんな美味いならデブになっても構わない。

Pythonで文字列を指定文字数で分割したListを生成する

Pythonで与えられた文字数で分割する関数を検証したのでメモ。
意外にも標準で用意されていない??自分の調査不足か。。
なので自ら実装してみた。

◆仕様

  • 引数1:分割したい文字列
  • 引数2:分割したい文字数
  • 戻り値:指定文字列を分割したList。最後の文字列が引数2の文字長に満たない場合は、最後の文字列

◆例

  • 引数1:abcdef
  • 引数2:2
  • 戻り値:['ab', 'cd', 'ef']
  • 引数1:abcdef
  • 引数2:4
  • 戻り値:['abcd', 'ef']

ソースコード

# strの文字列をlenの桁数毎に分割して
# Listで返却する。
def splitByLen(str, length) :
    result = []
    i = 0
    while True :
        parts = str[i*length : (i+1)*length]

        if parts != '' : 
            result.append(parts)

        if len(parts) < length :
            break
        i = i + 1

    return result

あまり「While True」のループは基本的に好きではないけど一旦これで。
引数のstrのレングスと、lengthを使えば回避出来そうだけどこだわり特にないのでこのままでいいかと。