我有一個字符串,我想STR的例如數組:字符串分割到數組與許多焦炭親物品
"hello world"
["hel", "lo ", "wor", "ld"]
或
["hell", "o wo", "rld"]
我看到list(message)
將是確定的,但只是爲
["h", "e", "l", "l", "o", " ", "w", "o", "r", "l", "d", ]
任何想法?
我有一個字符串,我想STR的例如數組:字符串分割到數組與許多焦炭親物品
"hello world"
["hel", "lo ", "wor", "ld"]
或
["hell", "o wo", "rld"]
我看到list(message)
將是確定的,但只是爲
["h", "e", "l", "l", "o", " ", "w", "o", "r", "l", "d", ]
任何想法?
>>> s = 'hello world'
>>> [s[i:i+3] for i in range(len(s)) if not i % 3]
['hel', 'lo ', 'wor', 'ld']
對於更通用的解決方案(即自定義的分割),試試這個功能:
def split_on_parts(s, *parts):
total = 0
buildstr = []
for p in parts:
buildstr.append(s[total:total+p])
total += p
return buildstr
s = 'hello world'
print split_on_parts(s, 3, 3, 3, 3)
print split_on_parts(s, 4, 3, 4)
它產生的輸出:
['hel', 'lo ', 'wor', 'ld']
['hell', 'o w', 'orld']
OR如果你真的在一個班輪的心情:
def split_on_parts(s, *parts):
return [s[sum(parts[:p]):sum(parts[:p+1])] for p in range(len(parts))]
非常感謝。 – Charles 2010-12-09 19:59:26
>>> lst = ['he', 'llo', ' wo', 'rld']
>>> ''.join(lst)
'hello world'
>>> s = 'hello world'
>>> list(s)
['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
這些是基礎;如果您有任何具體要求,請對此帖發表評論,我會更新我的答案。
太棒了! – 2012-06-20 10:24:11
>>> def split_length(s, l):
... return [s[i:i+l] for i in range(0, len(s), l)]
...
>>> split_length("hello world", 3)
['hel', 'lo ', 'wor', 'ld']
>>> split_length("hello world", 4)
['hell', 'o wo', 'rld']
+1,我應該考慮使用範圍步驟。 – 2010-12-09 20:03:59
>>> s
'hello world'
>>> filter(lambda n: n != ' ', re.split("(o|wo)", s))
['hell', 'o', 'wo', 'rld']
>>> filter(lambda n: n != ' ', re.split("(lo|wor)", s))
['hel', 'lo', 'wor', 'ld']
不確定它是如何(按什麼標準)準確地被分開。
`list` is a python key word. You can use list and indexing power of list to manipulate your result.
In [5]: s = 'hello world'
In [6]: s.split()
Out[6]: ['hello', 'world']
In [7]: list(s)
Out[7]: ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd']
什麼是分割字符串的標準?即將某些部分分成若干部分,等等。 – 2010-12-09 19:47:56