Python3、如何把一个字符串打散
Python 3, how to break into pieces a string
我需要打断一串字符。
子串必须组成:
- 第一个字母,无论是元音还是辅音
- 所有辅音
- 所有元音
示例:
字符串:'dipestaggio'
结果:['di'、'pe'、'sta'、'ggio']
字符串:'odiattuazio'
结果:['o'、'dia'、'ttua'、'zio']
我尝试使用这段代码,但它是错误的:
def separate(word):
A = word[0]
L = []
for pre,cur in zip(word[2:], word[1:]):
if cur in voc:
A += cur
elif cur not in voc:
L.append(A)
if pre in voc: A = ''
A += cur
return L
有人言重了?
谢谢
根据我们目前掌握的信息,这里有一个可能的解决方案:
string = "dipestaggio"
voc = ["a", "e", "i", "o", "u"]
def separate(word):
A = ""
L = []
for letter in word:
if len(A) < 1:
A += letter
else:
if A[len(A) - 1] not in voc:
A += letter
else:
if letter in voc:
A += letter
else:
L.append(A)
A = letter
L.append(A)
return L
print(separate(string))
dipestaggio
的 输出 将是:
['di', 'pe', 'sta', 'ggio']
更新: 如果你想将辅音连接到元音,如果辅音是第一个字母,你可以将 if len(A) < 1
更改为 if len(A) <= 1
我需要打断一串字符。 子串必须组成:
- 第一个字母,无论是元音还是辅音
- 所有辅音
- 所有元音
示例: 字符串:'dipestaggio' 结果:['di'、'pe'、'sta'、'ggio']
字符串:'odiattuazio' 结果:['o'、'dia'、'ttua'、'zio']
我尝试使用这段代码,但它是错误的:
def separate(word):
A = word[0]
L = []
for pre,cur in zip(word[2:], word[1:]):
if cur in voc:
A += cur
elif cur not in voc:
L.append(A)
if pre in voc: A = ''
A += cur
return L
有人言重了? 谢谢
根据我们目前掌握的信息,这里有一个可能的解决方案:
string = "dipestaggio"
voc = ["a", "e", "i", "o", "u"]
def separate(word):
A = ""
L = []
for letter in word:
if len(A) < 1:
A += letter
else:
if A[len(A) - 1] not in voc:
A += letter
else:
if letter in voc:
A += letter
else:
L.append(A)
A = letter
L.append(A)
return L
print(separate(string))
dipestaggio
的 输出 将是:
['di', 'pe', 'sta', 'ggio']
更新: 如果你想将辅音连接到元音,如果辅音是第一个字母,你可以将 if len(A) < 1
更改为 if len(A) <= 1