cf.flat¶
-
cf.
flat
(x)[source]¶ Return an iterator over an arbitrarily nested sequence.
Parameters: - x : scalar or arbitrarily nested sequence
The arbitrarily nested sequence to be flattened. Note that a If x is a string or a scalar then this is equivalent to passing a single element sequence containing x.
Returns: - out: generator
An iterator over flattened sequence.
Examples: >>> print cf.flat([1, [2, [3, 4]]]) <generator object flat at 0x3649cd0>
>>> print list(cf.flat([1, (2, [3, 4])])) [1, 2, 3, 4]
>>> import numpy >>> print list(cf.flat((1, [2, numpy.array([[3, 4], [5, 6]])])) [1, 2, 3, 4, 5, 6]
>>> for a in cf.flat([1, [2, [3, 4]]]): ... print a, 1 2 3 4
>>> for a in cf.flat(['a', ['bc', ['def', 'ghij']]]): ... print a, ' ', a bc def ghij
>>> for a in cf.flat(2004): ... print a 2004
>>> for a in cf.flat('abcdefghij'): ... print a abcdefghij
>>> f <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1> >>> for a in cf.flat(f): ... print repr(a) <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1>
>>> for a in cf.flat([f, [f, [f, f]]]): ... print repr(a) <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1> <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1> <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1> <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1>
>>> fl = cf.FieldList(cf.flat([f, [f, [f, f]]]) >>> fl [<CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1>, <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1>, <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1>, <CF Field: eastward_wind(air_pressure(5), latitude(110), longitude(106)) m s-1>]