如何从任何单词中删除 'ing'

how to remove 'ing' from any word

我需要从包含 ing 的单词末尾删除 ing。如果一个单词中没有 ing,那么不要做任何事情并打印它。

我尝试了一些使用 input 和 word - ing 的代码,但它们不起作用。

wrd = input("Word: ")
print(wrd - "ing")

如果你有像 springing 或 singing 这样的词,使用 re:

import re
wrd = input("Word: ")
print(re.sub("ing$", "", wrd))

这是另一种方法:

>>> wrd = input("Word: ")
Word: wording
>>> print(wrd[:-3] if wrd[-3:] == "ing" else wrd)
'word'
>>> 

这只会删除字符串末尾的 ing

原始代码:

print(wrd[:-3] if wrd[-3:] == "ing" else wrd)

这是一些时间测试:

import timeit
import re

wrd = "counting timeing"

def method1():
    re.sub("ing$", "", wrd)

def method2():
    wrd[:-3] if wrd.endswith('ing') else wrd

def method3():
    wrd[:-3] if wrd[-3:] == "ing" else wrd

print(timeit.timeit(method1))
print(timeit.timeit(method2))
print(timeit.timeit(method3))

我的输出是:

2.3050724
0.3981412
0.37868440000000003

所以我回答的方法3最快

print(x[:-3] if x.endswith('ing') else x )