Skip to main content
 首页 » 编程设计

python之如何指定字符串方法计数

2025年05月04日15oomusou

我正在尝试实现一个将字符串作为参数的函数,字符串末尾是否包含字母“ion”决定了输出。

例如,如果我输入字符串 'accordionist',我应该得到 'accordionist' 的输出,因为虽然它包含 'ion',但它不在字符串的末尾。

但是,如果我输入字符串“congratulation”,我想将“ion”更改为“e”,因为“ion”位于单词的末尾。

到目前为止我有:

def wordSwap(x): 
 
    if x.count('ion') == 1: 
        return x.replace('ion','e') 
    else: 
        return x 

>>> wordSwap('congratulation') 
'congratulate' 

这很好用,但是当我使用如下字符串时:

>>> wordSwap('accordionist') 

我明白了

'accordeist' 

如何指定我只想将位于字符串末尾的“ion”更改为“e”?

请您参考如下方法:

使用正则表达式:

>>> import re 
>>> def wordswap(x): 
...    return re.sub("ion$", "e", x) 
... 
>>> wordswap("accordionist") 
'accordionist' 
>>> wordswap("congratulation") 
'congratulate' 

$ 是“字符串结尾” anchor (它只匹配字符串的结尾)。