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 函数名(函数参数): 内容
随机推荐
- 使用Node.js搭建数据爬虫crawler
0. 通用爬虫框架包括: (1) 将爬取url加入队列,并获取指定url的前端资源(crawler爬虫框架主要使用Crawler类进行抓取网页) (2)解析前端资源,获取指定所需字段的值,即获取有价值 ...
- 记录腾讯云中矿机病毒处理过程(重装系统了fu*k)
刚想学学kafka,登录与服务器看看把,谁知ssh特别慢,很奇怪,我以为是我网速问题,断了wifi,换了网线,通过iterm想要ssh root@x.x.x.x,但是上不去? 就tm的很奇怪了,登录腾 ...
- CentOS下安装nvm
1安装版本管理工具git yum install git 查看git版本 git --version 2 安装Node.js版本管理工具nvm curl -o- https://raw.githubu ...
- [洛谷P1438] 无聊的数列
题目类型:差分,线段树 传送门:>Here< 题意:给出一个数列,每次给一个区间对应的加上一个等差数列,并询问某一个元素目前的值. 解题思路 所谓差分,我个人的理解就是用\(O(1)\)的 ...
- 爬虫 requests 模块
requests 模块 介绍 使用requests可以模拟浏览器的请求, 比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3) ps: requests库发 ...
- C++ bitset 用法
C++的 bitset 在 bitset 头文件中,它是一种类似数组的结构,它的每一个元素只能是0或1,每个元素仅用1bit空间. 下面是具体用法 构造函数 bitset常用构造函数有四种,如下 bi ...
- ubuntu16.04+cuda9+cudnn7+tensorflow+pycharm环境搭建
安装环境:ubuntu16.04+cuda9+cudnn7+tensorflow+pycharm 1)前期搭建过程主要是按照这篇博文,对于版本选择,安装步骤都讲得很详细,亲测有效! https://b ...
- P2518 [HAOI2010]计数
题目链接 \(Click\) \(Here\) 很好很妙的一个题目. 其实可以生成的数字,一定是原数的一个排列,因为\(0\)被放在前面就可以认为不存在了嘛~.也就是说现在求的就是全排列中所有小于该数 ...
- UE4材质特别属生记录
tangent space normal 切线空间法线 材质默认使用的切线空间法线,可切换为对象空间法线(彩色贴图) Separate Translucency 单独半透明 允许半透明被渲染到一个单独 ...
- input(type="checkbox"|type="radio")+jquery使用
1.用.is(":checked")判断input是否为选中状态 例: var value=$(this).is(":checked"); localStora ...