如何从输入文本中删除第一个和最后一个“I”?第1个变体删除最后一个字母的文本和副本:
Entered TexEntered Text
^ ^
第二种变体不起作用。你知道吗
代码:
txt4 = input("Enter text: ")
txt4 = txt4.swapcase()
print(txt4)
x = "I" or "i"
x1 = txt4.find(x)
x2 = txt4.rfind(x)
if [x1, x2] == -1:
print("Letter \"i\" not found!")
else:
#txt4 = txt4.replace(txt4[0:(x1+1)], "", 1) #]
#txt4 = txt4.replace(txt4[(x2):0], "", 1) #]-2nd variant
#txt4x1 = txt4[:(x1+1)] + txt4[(x2):] #]
txt4x1 = txt4[0:x1]+txt4[(x1+1):]
txt4x1 = txt4[0:x2]+txt4[(x2+1):]
print(txt4x1)
可以使用正则表达式:
另一种更简单的方法。你知道吗
正如在注释中提到的,您正试图对列表使用
or
和==
,但它们在Python中根本不起作用。你知道吗你需要逐个检查每个字符。你知道吗
代替
"I" or "i"
(它总是返回"I"
,因为它是第一个True
值),我们对每个值(从一个集合中)进行find()
和rfind()
,然后找到不是-1
的最小值和最大值来找到最左边和最右边的匹配项,然后我们可以进行替换,大致与您之前所做的一样。你知道吗相关问题 更多 >
编程相关推荐