假设我有一本特殊的字典,我知道它有可能包含空字符串的键。如果其中确实有一个空字符串键,那么它将始终位于第一位
dict_ex = {"":"Aaa", "Bb":"b", 1:"Cc", "Ddd":123}
如果我这样做:
def Aaa():
for dk in dict_ex.keys():
break
if dk!="":
print(dk)
return None
Aaa()
在执行循环后读取变量是否可靠?
你永远不知道还有一些我不知道的陷阱或其他蟒蛇般的乐趣。
是的,在 Python 中,循环变量保留其值,并且在循环结束后可以访问。但在这种情况下,最好不要依赖Python中字典实现的特性,而是利用检查字典中键是否存在具有复杂性
O(1)(摊销)的事实,即 如果您的字典元素没有退化哈希,那么搜索将立即执行。好吧,无需循环即可获取可迭代集合的第一个元素for。一般来说,我会使用这样的检查并在需要时获取第一个元素:这里明确检查键“”是否在字典中,字典不为空,在这种情况下,第一个键被打印。
尽管无论如何,字典通常被认为是无序结构。例如,如果您需要以某种方式突出显示单独的键,最好将其写入单独的变量中。