Python 如何返回字符串的一部分

Python 如何返回字符串的一部分,python,string,Python,String,我有一个字符串str='yadayada;博格;12用于;scion$march.car;结束 我搜索的关键字符是$,那么如何返回部分字符串scion$march.car呢 我使用string.findstr,“$”在字符串中查找$的索引。使用str.split和next: 说明: s、 拆分“;”在“;”处拆分字符串并返回一个列表,现在我们遍历该列表并返回包含“$”的第一个项目: 上述代码大致相当于: def solve(strs): for s in strs.split(';'):

我有一个字符串str='yadayada;博格;12用于;scion$march.car;结束

我搜索的关键字符是$,那么如何返回部分字符串scion$march.car呢

我使用string.findstr,“$”在字符串中查找$的索引。

使用str.split和next:

说明:

s、 拆分“;”在“;”处拆分字符串并返回一个列表,现在我们遍历该列表并返回包含“$”的第一个项目:

上述代码大致相当于:

def solve(strs):
    for s in strs.split(';'):
        if '$' in s:
            return s
...         
>>> solve(s)
'scion$march.car'
使用str.split和next:

说明:

s、 拆分“;”在“;”处拆分字符串并返回一个列表,现在我们遍历该列表并返回包含“$”的第一个项目:

上述代码大致相当于:

def solve(strs):
    for s in strs.split(';'):
        if '$' in s:
            return s
...         
>>> solve(s)
'scion$march.car'
如上所述拆分可能是最干净的方式。但您也可以使用下面的find和rfind进行查找

基本上你会找到第一个“;”在“$”之后是第一个“;”并提取它们之间的子字符串

如上所述拆分可能是最干净的方式。但您也可以使用下面的find和rfind进行查找


基本上你会找到第一个“;”在“$”之后是第一个“;”并提取它们之间的子字符串

如果您不熟悉next,则s.split“;”中的每个部分可能都有一个更详细的语句:如果eachpart:print eachpart中的“$”是您不熟悉的next,则s.split“;”中的eachpart可能会有更详细的语句:如果每个零件中有“$”:打印每个零件
def solve(strs):
    for s in strs.split(';'):
        if '$' in s:
            return s
...         
>>> solve(s)
'scion$march.car'
i = s.find('$')
m = s[s.rfind(';', 0, i)+1:s.find(';',i)]
print m