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

Understanding Functional Programming

Functional programming defines a computation using expressions and evaluation; often these are encapsulated in function definitions. It de-emphasizes or avoids the complexity of state change and mutable objects. This tends to create programs that are more succinct and expressive. In this chapter, we'll introduce some of the techniques that characterize functional programming. We'll identify some of the ways to map these features to Python. Finally, we'll also address some ways in which the benefits of functional programming accrue when we use these design patterns to build Python applications.

Python has numerous functional programming features. It is not a purely a functional programming language. It offers enough of the right kinds of features that it confers the benefits of functional programming. It also retains all the optimization power of an imperative programming language.

We'll also look at a problem domain that we'll use for many of the examples in this book. We'll try to stick closely to Exploratory Data Analysis (EDA) because its algorithms are often good examples of functional programming. Furthermore, the benefits of functional programming accrue rapidly in this problem domain.

Our goal is to establish some essential principles of functional programming. The more serious Python code will begin in Chapter 2, Introducing Some Functional Features.

We'll focus on Python 3.6 features in this book. However, some of the examples might also work in Python 2.
主站蜘蛛池模板: 玉树县| 阳新县| 阿图什市| 丹东市| 商南县| 泌阳县| 香格里拉县| 屏南县| 镇远县| 武清区| 沁水县| 静安区| 弋阳县| 兖州市| 新龙县| 囊谦县| 班戈县| 长武县| 商洛市| 横山县| 元朗区| 平山县| 南华县| 元阳县| 宜都市| 南平市| 彭州市| 南澳县| 柳河县| 滦南县| 潼南县| 常德市| 逊克县| 临城县| 六枝特区| 台前县| 秦皇岛市| 民乐县| 高安市| 西和县| 灵寿县|