Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从给定位置索引的文本中提取单词?_Python_String - Fatal编程技术网

Python 如何从给定位置索引的文本中提取单词?

Python 如何从给定位置索引的文本中提取单词?,python,string,Python,String,给出这样一个文本: s = "Lorem ipsum dolor sit amet" 在给定位置索引的情况下,如何从中提取任何单词?例如,如果pos为6或8,则结果应为“ipsum”。如果pos是18、19或20,那么结果应该是“sit”。不要像在c/c++中经常使用的那样,将str用作字符串名,因为这样会对内置类型名str进行阴影处理 试试这个: In [95]: s[1+s.rfind(' ', 0,8): s.find(' ', 8)] Out[95]: 'ipsum' 使其成为可重用

给出这样一个文本:

s = "Lorem ipsum dolor sit amet"

在给定位置索引的情况下,如何从中提取任何单词?例如,如果
pos
为6或8,则结果应为“ipsum”。如果
pos
是18、19或20,那么结果应该是“sit”。

不要像在c/c++中经常使用的那样,将
str
用作字符串名,因为这样会对内置类型名
str
进行阴影处理

试试这个:

In [95]: s[1+s.rfind(' ', 0,8): s.find(' ', 8)]
Out[95]: 'ipsum'
使其成为可重用的功能:

In [100]: def foo(s, n):
     ...:     return s[1+s.rfind(' ', 0,n): s.find(' ', n)]

In [101]: foo(s, 20)
Out[101]: 'sit'

不要像在c/c++中经常使用的那样,将
str
用作字符串名,因为这样会使内置类型名
str
产生阴影

试试这个:

In [95]: s[1+s.rfind(' ', 0,8): s.find(' ', 8)]
Out[95]: 'ipsum'
使其成为可重用的功能:

In [100]: def foo(s, n):
     ...:     return s[1+s.rfind(' ', 0,n): s.find(' ', n)]

In [101]: foo(s, 20)
Out[101]: 'sit'

不要将
str
用作变量名;)@张晓晨:像你这样没有解释的建议是毫无用处的。初学者不会知道为什么永远不要使用str作为变量名。@BryanOakley用这个解释编辑了我的答案;)不要将
str
用作变量名;)@张晓晨:像你这样没有解释的建议是毫无用处的。初学者不会知道为什么永远不要使用str作为变量名。@BryanOakley用这个解释编辑了我的答案;)好方法,好方法。