我在python中循环,并且只有在字典中尚未存在的情况下才想将字符添加到字典中.
我怎样才能做到这一点?
mydic = {}
for x in range(100):
??
Run Code Online (Sandbox Code Playgroud)
对于一个词典,它简单快捷:
for x in range(100):
if x not in mydic:
mydic[x] = x # or whatever value you want
Run Code Online (Sandbox Code Playgroud)
也就是说,只需检查not in而不是in.
这对于一个字典很有用.对于列表,它将非常慢(二次); 对于速度,你需要在循环之前添加一个辅助集(希望列表中的所有项都是可清除的),并在循环中检查并更新它.即:
auxset = set(mylist)
for x in range(100):
if x not in auxset:
auxset.add(x)
mylist.append(x) # or whatever
Run Code Online (Sandbox Code Playgroud)
对于一个元组,它是不可能添加任何东西,或以任何其他方式修改它,当然:元组是不可变的!当然你知道吗?!那么,为什么要问?