官术网_书友最值得收藏!

Working with Collections

Python offers a number of functions that process whole collections. They can be applied to sequences (lists or tuples), sets, mappings, and iterable results of generator expressions. We'll look at Python's collection-processing features from a functional programming viewpoint.

We'll start out by looking at iterables and some simple functions that work with iterables. We'll look at some design patterns to handle iterables and sequences with recursive functions as well as explicit for loops. We'll look at how we can apply a scalar function to a collection of data with a generator expression.

In this chapter, we'll show you examples of how to use the following functions with collections:

  • any() and all()
  • len(), sum(), and some higher-order statistical processing related to these functions
  • zip() and some related techniques to structure and flatten lists of data
  • reversed()
  • enumerate()

The first four functions can be called reductions: they reduce a collection to a single value. The other three functions, zip(), reversed(), and enumerate(), are mappings; they produce a new collection from an existing collection(s). In the next chapter, we'll look at some more mapping and reduction functions that use an additional function as an argument to customize their processing.

In this chapter, we'll start out by looking at ways to process data, using generator expressions. Then, we'll apply different kinds of collection-level functions to show how they can simplify the syntax of iterative processing. We'll also look at some different ways of restructuring data.

In the next chapter, we'll focus on using higher-order collection functions to do similar kinds of processing.

主站蜘蛛池模板: 平塘县| 邛崃市| 汉源县| 郯城县| 腾冲县| 云林县| 晋城| 屏东县| 遂宁市| 柘城县| 永定县| 调兵山市| 连江县| 三明市| 贡觉县| 全椒县| 徐汇区| 木兰县| 张家港市| 汉阴县| 留坝县| 惠东县| 屏边| 南木林县| 抚州市| 遵义县| 信丰县| 循化| 特克斯县| 道孚县| 东丰县| 壤塘县| 社会| 乐陵市| 凯里市| 台湾省| 日照市| 上栗县| 邻水| 西和县| 鸡东县|