2021-7-5python学习日志

今日内容概要

	1、匿名函数与内置函数
            lambda
            filter
            map
            reduce
    2、面向过程编程
    3、模块
        import
        from 。。。 import
    4、模块的搜索路径
    5、模块的两种用途

今日内容详情

  • 匿名函数与内置函数

    	一、匿名函数
    		1.什么是匿名函数?
    			匿名函数就是没有名字的函数
    		2.为何要用匿名函数?
    			用于临时使用一次的场景
    		3.如何定义匿名函数?
    			lambda 参数1,参数2,...: expression
    
    	二、内置函数
    		函数mapreducefilter都支持迭代器协议,用来处理可迭代对象,我们以一个可迭代对象array为例来介绍它们三个的用法
    			array=[1,2,3,4,5]
    			一:对array的每个元素做平方处理,可以使用map函数
    				map函数可以接收两个参数,一个是函数,另外一个是可迭代对象
    				res=map(lambda x:x**2,array)
    			二:对array进行合并操作,比如求和运算,这就用到了reduce函数
    				reduce函数可以接收三个参数,一个是函数,第二个是可迭代对象,第三个是初始值
    				from functools import reduce 
    				res=reduce(lambda x,y:x+y,array)
    			三:对array进行过滤操作,这就用到了filter函数,比如过滤出大于3的元素
    				res=filter(lambda x:x>3,array)
    			
    
  • 面向过程编程

    	面向过程编程思想
    	    过程就是流程,即先干什么再干什么后干什么
    	    基于该思想写程序就好比在设计一条条的流水线
    	
    	    优点:复杂的问题流程化、进而简单化
    	    缺点:牵一发而动全身,扩展性差
    
  • 模块

    	自定义模块
    	    1、一个py就是一个模块
    	    2、包就是一个存放有__init__.py文件的文件夹,包的本质就是一个模块
    	
    	 三种来源:
    	    1、自带的
    	        内置
    	        标准库
    	    2、第三方的
    	        pip3 install 第三方库
    	    3、自定义的
    	
    	首次导入模块发生2件事
    		1.会触发spam.py的运行,会产生一个模块的名称空间,用来存放模块运行过程中的名字
    		2.会在当前文件的名称空间中产生一个名字spam,该名称指向模块的名称空间
    
    	* 避免出现循环导入问题
    	
    
  • 模块的搜索路径

    	模块搜索路径,优先级从高到低
    		1、内存
    		2、内置
    		3、sys.path
    	
    
  • 模块的两种用途

    	两种用途:
    	    一:脚本,一个文件就是整个程序,用来被执行
    	    二:模块,文件中存放着一堆功能,用来被导入使用
    	    
    	python为我们内置了全局变量__name__,
    	    当文件被当做脚本执行时:__name__ 等于'__main__'
    	    当文件被当做模块导入时:__name__等于模块名
    	    
    	控制.py文件在不同的应用场景下执行不同的逻辑
    		if __name__ == '__main__':
    

参考地址:https://www.cnblogs.com/linhaifeng/articles/6379069.html#_label5
https://zhuanlan.zhihu.com/p/109127048

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值