作者sbrhsieh (偶尔想摆烂一下)
看板Python
标题Re: [问题] 关於dict下一个key的问题
时间Wed Dec 8 04:13:01 2010
※ 引述《EmptySmile (Smile LikeThe EmptySoul)》之铭言:
: 假设
: test = {1:10, 3:30, 5:50} #key并非顺序的, 所以无法直接+1去读取
: 如何使test在for中能够读取下一个key?
: means: 在for i in test: #当i是1时
: print i #print出的却是3的值...以此类推
: 小弟能想到的只有
: key = test.keys() #先把test中的key抓出来变成list
: for i in range(0, len(key)):
: try:
: print test[key[i+1]]
: except:
: pass
: 用这种方式, 读取下一个key的值
: 应此想请教各位高手
: dict能否呼叫个function, 就直接读取下一个key呢?
: 感谢
在 iterate 一个 sequence 的过程中,每个 iteration 需要使用到下一个
element,有一种算是蛮常用的手法:
有一个 sequence A,
令另一个 sequence B 为 A[1:] + [S],S 为一个表示 Nothing 的值。
走访 zip(A, B) 一遍。
for x, next_x in zip(A, B):
...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.248.91.247
1F:推 EmptySmile:明白, 是个好办法, 容我再想想该用哪种形式宣告 12/08 19:13
2F:→ EmptySmile:thanks 12/08 19:14