问题:Python String.split 函数问题

时间:2021-08-01 16:08:24

标签: python split

我有这样的问题:

name = "Steve Jobs is my name."

所需的输出:

['Steve Jobs', 'is', 'my name.']

我尝试过的解决方案: 我曾尝试在 Python 中使用 split 函数。 代码:

result = name.split()
['Steve', 'Jobs', 'is', 'my', 'name']

我无法从这里继续。我试过使用 for 循环。 但是,我没有得到所需的结果。

我是否遗漏了什么或有其他方法可以解决这个问题?

请告诉我。

3 个答案:

答案 0 :(得分:1)

这似乎是一种面试问题,他们只是想了解您的想法。在这种情况下,只需要举一个例子,我就会寻找一种模式,让您获得所需的输出。

例如,您可以在 " is " 上拆分以获得前后两部分,然后将 "is" 重新插入列表中间以获得所需的结果。

name = "Steve Jobs is my name."

result = name.split(" is ")
result .insert(1, "is")
print(result )

答案 1 :(得分:1)

假设这是一个棘手的问题:

[x.strip() for x in name.partition("is")]

答案 2 :(得分:0)

如果您使用 string.split() 拆分字符串,则字符串将在每次出现 " "(空格)时拆分。但在您的情况下,您希望在特定位置而不是在每次出现空间时将其拆分。

您可以尝试使用:

result1 = [name[:10], name[11:13], name[14:]]

但这仅适用于您想拆分此特定字符串的情况。

如果要拆分句子结构相似的不同字符串,可以尝试:

words = name.split()
result = [words[0] + " " + words[1], words[2], words[3] + " " + words[4]]