2012-09-08 73 views
-2

可能重複:
Split python string every nth character?
What is the most 「pythonic」 way to iterate over a list in chunks?如何在Python中分割字符串?

我需要一個字符串分割成相等的部分。舉例來說,如果我有這樣的字符串:

string = "123456781234567812345678" 

我需要每8個字符切:

["12345678", "12345678", "12345678"] 
+2

我覺得這已經問 http://stackoverflow.com/questions/9475241/split-python-string-every-nth-character –

+0

- 尼斯找到,人士Himanshu!讓我對自己的答案感覺良好,因爲它完全一樣。哈哈。 –

+1

@ SeanJohnson幾乎沒有其他的答案,它幾乎沒有那麼熱烈! –

回答

7

這實際上是一個非常棒的Python列表理解單行程應用程序!

my_str="123456781234567812345678" 
splits=[my_str[x:x+8] for x in range(0,len(my_str),8)] 
//splits = ["12345678","12345678","12345678"] 

讓我知道如果您有任何問題。

+2

我會重命名'str'。它與內置類型'str'衝突。 – Blender

+0

好的呼叫。固定。 –

+0

鏈接問題的第二個答案非常簡潔:'map(''。join,zip(* [iter(my_str)] * 8))''。 – Blender

-7

這可能幫助:

str.split(str="", num=string.count(str)). 

STR:任何分隔符,由默認它是空間。

num:要製作的行數。

你可以得到更多信息here

+0

這並不回答這個問題,它是關於分割成給定長度的字符串而不是分隔符的問題 –

+2

很高興您做了一個搜索來幫助問題作者,但只是複製了您找到的第一個結果而沒有任何解釋(即使引用)真的沒有幫助。 OP可能會使用'8'作爲分隔符,並認爲它可以工作。 –