Python 3.x 如何检查字符串中的字符是否以2-Python 3的增量大写

Python 3.x 如何检查字符串中的字符是否以2-Python 3的增量大写,python-3.x,Python 3.x,我试图创建一个函数,将“op”放在字符串的每个字符之间。但是,如果o或p位于大写字母旁边,则o和/或p必须大写。例如: 给定输入:“aB” 应该输出:“aoPB” 我已尝试对字符串中的每个字符执行for循环 并使用.islower()和.isupper() 我希望如果我把s作为'ab'得到'aopb',但是我只得到'b'如果你不在末尾使用括号,你实际上并没有调用islower/isupper方法。您只是在引用与该方法关联的对象 添加括号&您的函数现在应该可以工作了: def oPify(s):

我试图创建一个函数,将“op”放在字符串的每个字符之间。但是,如果o或p位于大写字母旁边,则o和/或p必须大写。例如:

给定输入:“aB”

应该输出:“aoPB”

我已尝试对字符串中的每个字符执行for循环 并使用
.islower()
.isupper()


我希望如果我把
s
作为'ab'得到'aopb',但是我只得到'b'

如果你不在末尾使用括号,你实际上并没有调用
islower
/
isupper
方法。您只是在引用与该方法关联的对象

添加括号&您的函数现在应该可以工作了:

def oPify(s):

    s2 = ''

    for i in range(0,len(s),1) :

        if i == len(s)-1 :
            s2 = s2 + s[i]

            return s2
        elif s[i].islower()==True and s[i+1].islower()==True:

            s2 = s2 + s[i]+'op'
        elif s[i].islower()==True and s[i+1].isupper()==True:

            s2 = s2 + s[i]+'oP'
        elif s[i].isupper()==True and s[i+1].islower()==True:

            s2 = s2 + s[i]+'Op'
        elif s[i].isupper()==True and s[i+1].isupper()==True:

            s2 = s2 + s[i]+'OP'
(此代码还修复了分号输入错误。)

def oPify(s):

    s2 = ''

    for i in range(0,len(s),1) :

        if i == len(s)-1 :
            s2 = s2 + s[i]

            return s2
        elif s[i].islower()==True and s[i+1].islower()==True:

            s2 = s2 + s[i]+'op'
        elif s[i].islower()==True and s[i+1].isupper()==True:

            s2 = s2 + s[i]+'oP'
        elif s[i].isupper()==True and s[i+1].islower()==True:

            s2 = s2 + s[i]+'Op'
        elif s[i].isupper()==True and s[i+1].isupper()==True:

            s2 = s2 + s[i]+'OP'