文字列を正しくフォーマットするために、別の長さの塊に分割する必要がありました。例として、これは文字列です文字列を異なる長さに分割します。
- 25c319f75e3fbed5a9f0497750ea12992b30d565
、固定長のチャンクでそれを分割するために、私は単に手順やスライスを使用します。
s = '25c319f75e3fbed5a9f0497750ea12992b30d565'
n = 2
print("-".join([s[i:i+n] for i in range(0, len(s), n)]))
しかし、n
は番号のリストだった場合、私は何ができます一例として、分割する:
print("-".join([s[0:8], s[8:12], s[12:16], s[16:20], s[20:24], s[24:32]]))
:私が作った
s = '25c319f75e3fbed5a9f0497750ea12992b30d565'
n = [8, 4, 4, 4, 4, 12] # edited for consistency - Coldspeed
唯一の解決策は、このました
pythonicではなく、より信頼性の高い文字列ではありません。
コードの最後の例からの出力:
25c319f7-5e3f-bed5-a9f0-4977-50ea1299
だから、これはより多くの神託1つのライナーの方法で行うことができますか?これが行われるための他のより自動化された方法は何ですか?
答えをありがとう。出力は '--- 19f75e3f' – ShellRox
です。出力は' --19f7-5e3'です。 – ShellRox
@ShellRoxもう少し遅いですが、ここにはitertoolsのない1つのライナーがあります。合計を呼び出し続けるので、非効率ですので注意してください。しかし、それは動作します。 –