ch02
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# namedtuple.py
|
||||
|
||||
|
||||
# the problem
|
||||
>>> vision = (9.5, 8.8)
|
||||
>>> vision
|
||||
(9.5, 8.8)
|
||||
>>> vision[0] # left eye (implicit positional reference)
|
||||
9.5
|
||||
>>> vision[1] # right eye (implicit positional reference)
|
||||
8.8
|
||||
|
||||
|
||||
# the solution
|
||||
>>> from collections import namedtuple
|
||||
>>> Vision = namedtuple('Vision', ['left', 'right'])
|
||||
>>> vision = Vision(9.5, 8.8)
|
||||
>>> vision[0]
|
||||
9.5
|
||||
>>> vision.left # same as vision[0], but explicit
|
||||
9.5
|
||||
>>> vision.right # same as vision[1], but explicit
|
||||
8.8
|
||||
|
||||
|
||||
# the change
|
||||
>>> Vision = namedtuple('Vision', ['left', 'combined', 'right'])
|
||||
>>> vision = Vision(9.5, 9.2, 8.8)
|
||||
>>> vision.left # still correct
|
||||
9.5
|
||||
>>> vision.right # still correct (though now is vision[2])
|
||||
8.8
|
||||
>>> vision.combined # the new vision[1]
|
||||
9.2
|
||||
Reference in New Issue
Block a user