pra*_*nny -2 python string input cpu-word slice
我需要从其中包含ing的单词的末尾删除ing。如果一个字没有荷兰国际集团在里面,那就不要做任何事情,打印。
我已经尝试了一些使用input和单词的代码-但它们不起作用。
wrd = input("Word: ")
print(wrd - "ing")
Run Code Online (Sandbox Code Playgroud)
如果您有弹跳或唱歌之类的词,请使用re:
import re
wrd = input("Word: ")
print(re.sub("ing$", "", wrd))
Run Code Online (Sandbox Code Playgroud)
这是另一种方法:
>>> wrd = input("Word: ")
Word: wording
>>> print(wrd[:-3] if wrd[-3:] == "ing" else wrd)
'word'
>>>
Run Code Online (Sandbox Code Playgroud)
这只会删除ing字符串末尾的。
原始代码:
print(wrd[:-3] if wrd[-3:] == "ing" else wrd)
Run Code Online (Sandbox Code Playgroud)
这是一些时间测试:
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))
Run Code Online (Sandbox Code Playgroud)
对我来说输出是:
2.3050724
0.3981412
0.37868440000000003
所以我回答的方法3是最快的