2

嗨,我正在尝试拆分文本

For example
'C:/bye1.txt'
i would want 'C:/bye1.txt' only

'C:/bye1.txt C:/hello1.txt'
i would want C:/hello1.txt only

'C:/bye1.txt C:/hello1.txt C:/bye2 C:/bye3'
i would want C:/bye3 and so on.

我试过的代码,问题是它只打印出Y。

x = "Hello i am boey"
Last = x[len(x)-1]
print Last 
4

5 回答 5

3

看这个:

>>> x = 'C:/bye1.txt'
>>> x.split()[-1]
'C:/bye1.txt'
>>> y = 'C:/bye1.txt C:/hello1.txt'
>>> y.split()[-1]
'C:/hello1.txt'
>>> z = 'C:/bye1.txt C:/hello1.txt C:/bye2 C:/bye3'
>>> z.split()[-1]
'C:/bye3'
>>>

基本上,您使用拆分字符串str.split,然后获取最后一项(就是这样[-1]做的)。

于 2013-10-30T01:32:05.080 回答
1
x = "Hello i am boey".split()
Last = x[len(x)-1]
print Last

虽然更 Pythonic:

x = "Hello i am boey".split()
print x[-1]
于 2013-10-30T01:31:40.497 回答
1

尝试:

>>> x = 'C:/bye1.txt C:/hello1.txt C:/bye2 C:/bye3'
>>> x.split()[-1]
'C:/bye3'
>>>
于 2013-10-30T01:32:14.643 回答
0

回答:

'C:/bye1.txt C:/hello1.txt C:/bye2 C:/bye3'.split()[-1]

会给你'C:/bye3'

细节:

split没有任何参数的方法假定空格作为分隔符。在上面的示例中,它返回以下列表:

['C:/bye1.txt', 'C:/hello1.txt', 'C:/bye2', 'C:/bye3']

的索引-1指定以相反的顺序(从后面)获取第一个字符。

于 2013-10-30T01:48:54.227 回答
0

x[len()-1]返回列表的最后一个字符(在本例中为字符列表)。它与x[-1]

要获得所需的输出,请执行以下操作:

x.split()[-1]

如果您的句子被其他分隔符分隔,您可以指定分隔符,如下所示:

delimeter = ','
item = x.split(delimeter)[-1] # Split list according to delimeter and get last item

此外,“lstrip()”、“rstrip()”和“strip()”函数可能有助于从字符串末尾删除不必要的字符。在 python 文档中查找它们。

于 2013-10-30T01:33:22.957 回答