删除数字。

Removing numbers.

我试图从打印语句中删除数字,但是当我尝试时,它没有。它实际上添加了不需要的额外行。

p=open('test1.txt','r')
t=open('outChanger.txt','w')

counter=0
for l in p:
counter+=1
if counter%3==0:
    print((l.swapcase()*2),l.strip('2'))

t.close()
p.close()

我希望它看起来像这样,但没有 2。

蚂蚁两两前进,

蚂蚁两两前进,

(它用 .strip 添加了这个。)蚂蚁两两行进,

躲雨,砰!繁荣!繁荣!

躲雨,砰!繁荣!繁荣!

(并添加这个)为了躲雨,砰!繁荣!轰!

我想你可能想在第一次打印的字符串上调用 .strip(),而不是再次打印:

print(l.swapcase().strip()*2)

通过这样的链接方法,您将从字符串中剥离 "2",然后打印剥离的字符串两次。如果你不想从中间去掉"2",在乘以字符串后调用.strip()方法:

print((l.swapcase()*2).strip())

编辑:由于您的字符串不以"2" 结尾,.strip() 将不起作用,因为它只从边缘移除。要从字符串中删除所有 "2",请像这样调用 .replace() 方法:

print(l.swapcase().replace("2", "")*2)

这会将所有 "2" 替换为空字符串,因此几乎可以删除它们。