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
- generator
An iterator over flattened sequence.
Examples
>>> cf.flat([1, [2, [3, 4]]]) <generator object flat at 0x3649cd0>
>>> list(cf.flat([1, (2, [3, 4])])) [1, 2, 3, 4]
>>> import numpy >>> 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, end=' ') ... 1 2 3 4
>>> for a in cf.flat(['a', ['bc', ['def', 'ghij']]]): ... print(a, end=' ') ... a bc def ghij
>>> for a in cf.flat(2004): ... print(a) ... 2004
>>> for a in cf.flat('abcdefghij'): ... print(a, end=' ') ... 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>]