如果我在Python中创建自己的类,我应该定义什么函数以允许使用'in'运算符,例如
class MyClass(object):
...
m = MyClass()
if 54 in m:
...
Run Code Online (Sandbox Code Playgroud) 我需要除去在字符string1中存在的string2。在这里string1,string2只有小写字符 az 在给定的条件下,string1每次的长度都会更大。
我正在使用in运营商:
def removeChars (string1, string2):
for char in string2:
if char in string1:
string1 = string1.replace(char, '')
return string1
Run Code Online (Sandbox Code Playgroud)
但我在 Stack Overflow 上读到一个答案,上面写着:
对于 list、tuple、set、frozenset、dict 或 collections.deque 等容器类型,表达式
x in y等效于any(x is e or x == e for e in y)。
这意味着in操作员for在幕后使用了一个循环。
所以我的问题是,在for我的代码循环中,我应该考虑使用嵌套for循环,因为in操作员for在后台使用循环吗?如果是,这个程序的时间复杂度是多少?