for 循环和列表解析一样是一个序列操作。 甚到可以用在一些不是序列的对象中,比如 for c in "spam": print c.upper() for循环是真正的通用迭代工具,都能工作于遵守迭代协议的任何对象(这是python中无处不在的一个概念, 表示在内存中物理存储的序列,或一个在迭代操作情况下每次产生一个元素的对象)??? 从左到右扫描一个对象的每个Python工具都使用迭代协议。 不存在的键调用时产生 keyerror if 'f' in d: d['f']=1 修改f键的值 value = d['f'] if 'f' in d else 0