Python数据挖掘编程基础6

简介: 函数式编程(Functional Programming)是一种编程范型,它将计算机运算视为数学函数计算,避免程序状态及易变对象的影响。在Python中,函数式编程主要通过`lambda`、`map`、`reduce`、`filter`等函数实现。例如,对于列表`a=[5,6,7]`,可通过列表解析`b=[i+3 for i in a]`或`map`函数`b=map(lambda x:x+3, a)`实现元素加3的操作,两者输出均为`[8,9,10]`。尽管列表解析代码简洁,但其本质仍是for循环,在Python中效率较低;而`map`函数不仅功能相同,且执行效率更高。

2.1函数式编程
1、函数式编程(Functional Programming)或函数程序设计,又称泛函编程,是一种编程范型。函数式编程可以将计算机运算视为数学上的函数计算,并且可以避免程序状态以及易变对象对函数的影响。
2、在Python中,函数式编程主要由lambda、map、reduce、filter函数构成,其中lambda在代码清单2-14中已经介绍,这里不再赘述。
3、假设有一个列表a=[5,6,7],需要将列表a中的每个元素都加3,并生成一个新列表,可以通过列表解析操作实现该要求,如代码清单2-15所示。
代码清单2-15 使用列表解析操作列表元素
a=[5,6,7]
b=[i+3 for i in a]
print(b) //输出结果为[8,9,10]
4、使用map函数实现代码清单2-15中的示例,如代码清单2-16所示。
代码清单2-16 使用map函数操作列表元素
a[5,6,7]
b=map(lambda x:x+3,a)
b=list(b)
print(b) //输出结果也为[8,9,10]
在代码清单2-16中,首先定义一个列表,然后用map函数将命令逐一应用到列表a中的每个元素,最后返回一个数组。map函数也支持多参数的位置,例如,map(lambdaa x,y:x*y,a,b)表示将a、b两个列表的元素对应相乘,并将结果返回新列表。
通过代码清单2-15和代码清单2-16可以看出,列表解析虽然代码简短,但是本质上还是for循环。在Python中,for循环效率并不高,而map函数实现了相同的功能,并且效率更高

目录
相关文章
|
6月前
|
数据采集 Web App开发 数据可视化
Python零基础爬取东方财富网股票行情数据指南
东方财富网数据稳定、反爬宽松,适合爬虫入门。本文详解使用Python抓取股票行情数据,涵盖请求发送、HTML解析、动态加载处理、代理IP切换及数据可视化,助你快速掌握金融数据爬取技能。
3742 1
|
6月前
|
Java 数据挖掘 数据处理
(Pandas)Python做数据处理必选框架之一!(一):介绍Pandas中的两个数据结构;刨析Series:如何访问数据;数据去重、取众数、总和、标准差、方差、平均值等;判断缺失值、获取索引...
Pandas 是一个开源的数据分析和数据处理库,它是基于 Python 编程语言的。 Pandas 提供了易于使用的数据结构和数据分析工具,特别适用于处理结构化数据,如表格型数据(类似于Excel表格)。 Pandas 是数据科学和分析领域中常用的工具之一,它使得用户能够轻松地从各种数据源中导入数据,并对数据进行高效的操作和分析。 Pandas 主要引入了两种新的数据结构:Series 和 DataFrame。
639 0
|
6月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
6月前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
7月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1059 102
|
7月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
435 104
|
7月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
342 103
|
6月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
434 3
|
6月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
644 3
|
6月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
448 3

推荐镜像

更多