Python学习笔记五
一. 递归
递归函数:
def a ():
print ("from b")
b()
def b():
print("from a ")
a()
a()
递推和回溯
递归练习
二. 二分法
列表从小到大的数字列表,采用二分法。
三. 匿名函数
lambda n:n**2
自带return,适用于只有一行代码的函数体。
匿名函数调用:匿名函数就是个值。直接使用就行。不用为匿名函数绑定名称,匿名函数只能用一次,就会被回收。
匿名函数的应用场景:某个功能只用一次。
四. 内置函数
zip函数 拉链函数
字符串,列表,元组比较大,先比较索引0的值大小。
max函数
min函数
sorted函数
map函数
reduce函数
abs函数 求绝对值
all函数
any函数
bytes函数
callable函数
chr函数
ord函数
classmethod
staticmethod
complie函数
exec函数
五. 模块的使用
写一个py文件就是一个模块
常见的模块:文件,C和C++
导入一个模块,会有什么操作?
执行模块中的代码,并且只执行一次。
以源文件为准,产生一个名称空间。
以刚刚产生的名称空间为准,执行源文件的代码。
为模块起别名 使用as关键字
在一行导入多个模块,用逗号分隔开。
from ... import ...
from spam import * 导入模块中的所有名称
在模块中,添加__all__,只跟from spam import * 一起使用。导入的时候,先检查模块中有没有__all__,没有就导入所有,有只导入__all__中的变量名称。
__all__是一个列表,默认为空。
六. 模块的重载
python不支持重新加载
七. python文件的用途
当作脚本运行
当作模块被调用。
可以使用__name__查看,文件是被当作脚本,__name__='__main__'.
文件当作模块被导入时,__name__等于模块名。
通过__name__控制,文件被当作脚本,还是模块。
七. 模块的搜索路径
内存中已经加载的模块-->内置模块-->sys.path路径中包含的模块
八. 包
import 包名
python3会自动产生__init__.py的文件。python3中没有__init__.py,不会报错,但是python2中就会有报错。
.的左边必须是包,
九. 包的绝对路径和相对路径
十. 软件开发规范
bin 程序的执行文件
conf 配置文件
log 日志文件
lib 模块和包
data 数据文件
core 核心
import sys
Python学习笔记五的更多相关文章
- python学习笔记五 模块上(基础篇)
模块学习 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...
- Python学习笔记五:错误与异常
一:常见异常与错误 BaseException 所有异常的基类SystemExit 解释器请求退出KeyboardInterrupt 用户中断执行(通常是输入^C)Exception 常规错误的基类S ...
- python学习笔记(五):装饰器、生成器、内置函数、json
一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里 ...
- Python学习笔记五(读取提取写入文件)
#Python打开读取一个文件内容,然后写入一个新的文件中,并对某些字段进行提取,写入新的字段的脚本,与大家共同学习. import os import re def get_filelist(dir ...
- Python学习笔记(五)函数和代码复用
函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Python提供了许多内建函数,比如print().同样,你也可以自己创建函数, ...
- python学习笔记五 模块下(基础篇)
shevle 模块 扩展pickle模块... 1.潜在的陷进 >>> import shelve>>> s = shelve.open("nb" ...
- python学习笔记五--文件
任何情况下文本文件在Python里均是字符串模式. 一.创建一个文件,并写入: 函数open(文件名,w) 二.打开一个文件,并读取: 函数open(文件名,r),“r”是默认值,可以不用写 三.使用 ...
- Python学习笔记五--条件和循环
5.1 if语句 没什么好说,if语句语法如下: if expression: expr_true_suit 5.1.1多重条件表达式 单个if语句可以通过布尔操作符and,or,not实现多重条件判 ...
- Python学习笔记五,函数及其参数
在Python中如何自定义函数:其格式为 def 函数名(函数参数): 内容
随机推荐
- Flutter之List
void listDemo() { // 1.list的创建 listCreate(); // 2.多种类型的输出 listPrint(); // 3.添加数据 listAddElement(); / ...
- 其他综合-fdisk一键分区操作-无需脚本
fdisk一键操作分区-无需脚本(根据自己的实际环境操作) 为了让在系统里能够显示新添加的硬盘已知有两种操作方法 : 1.重启 2.输入echo "- - -" > /sys ...
- redis简介与持久化
一 . redis简介 redis属于NoSQL学名(not only sql) 特点: 存储结构与mysql这一种关系型数据库完全不同,nosql存储的是key value形式 nosql有很多产品 ...
- vsftp配置文件详解
匿名用户相关参数 anonymous_enable=YES # 是否允许匿名用户登陆 no_anon_password=NO # 是否忽略对匿名用户的密码检测 anon_root # 匿名登陆后尝试更 ...
- Ceph分布式存储(luminous)部署文档-ubuntu18-04
Ceph分布式存储(luminous)部署文档 环境 ubuntu18.04 ceph version 12.2.7 luminous (stable) 三节点 配置如下 node1:1U,1G me ...
- apache beam ElasticSearchIO 遇到异常后job中断执行 自己定制beam IO
可以将 ElasticSearchIO.java 源码拷贝至自己的项目.改名为MyElasticSearchIO.java.自己定制实现.这时编译会遇到auto.value失败.在pom.xml中加入 ...
- 剑指Offer_编程题_23
题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. class Solution { public: ...
- 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性)
一. 简介 上一个章节中,也介绍了立即加载和延迟加载,但上一个章节是针对单表而言的,不含外键,立即也好,延迟也好,都是指单表中的数据.但本章节重点介绍的三种加载方式均是针对含(导航属性.外键)的情况下 ...
- JaVa第二周学习总结
第一周学习的时候上传图片用的是网站外链然后导致出现了极为尴尬的情形...然后我就把第一周的全改成本地上传了. 首先列出所做任务 1 安装IDEA 2学习二三章视频,课本 3调试代码,上传码云 4总结问 ...
- Groovy 设计模式 -- 责任链模式
Chain of Responsibility Pattern http://groovy-lang.org/design-patterns.html#_chain_of_responsibility ...