相关疑难解决方法(0)

Python dict文字是否会按照它编写的顺序进行评估?

假设我在Python中遇到过这样的情况:

_avg = {'total':0.0, 'count':0}    # HACK: side-effects stored here

def procedure(n):
  _avg['count'] += 1
  _avg['total'] += n
  return n

def get_average():
  return _avg['total'] / _avg['count']

my_dict = {
  'key0': procedure(0),
  'key2': procedure(2),
  'key1': get_average()
}
assert(my_dict['key1'] == 1.0)
Run Code Online (Sandbox Code Playgroud)

我知道顺序my_dict.keys()是未定义的,但我想知道的是,通过像这样的文字的初始化是否保证以特定的顺序发生.总值是否my_dict['key1']会被1.0断言?

python dictionary

15
推荐指数
2
解决办法
885
查看次数

标签 统计

dictionary ×1

python ×1