day9-基础函数的学习(四)
这几天一直赶着写写作业,博客的书写又落下了,要加油鸭,开写
今日份目录
1.内置函数
2.递归函数
开始今日份总结
1.内置函数
内置函数就是python内部包含的函数,总计有68种,不过有些事真的天天用,按照个人以及老师的想法会对函数标注重要性
1.1 三星函数
1.1.1 作用域相关函数
这俩个函数在学闭包的时候用的比较多
locals:函数会以字典的类型返回当前位置的全部局部变量
globals:函数以字典的类型返回全部全局变量
1.1.2 输入输出相关
这俩基本是天天用吧
input:用户交互,接收到的数据都是string类型
print:打印输出,print的带参用法
print(1,2,3,sep='|') # 设置打印的分隔符
print(1,2,3,end=' ') # 设置结束时的格式
f = open('log','w',encoding='utf-8')
print('写入文件',file=f)#用打印的方式将打印的内容直接写入到文件
1.1.3内存相关
hash:获取一个对象(可哈希对象:int,str,bool,tuple)的哈希值
id:用于获取对象的内存地址,例如:深浅copy中
1.1.4 文件操作
这个文件操作都在用啊
open: 函数用于打开一个文件,创建一个文件句柄(file对象),相关的方法才可以调用
1.1.5帮助
help:函数用于查看函数或模块用途的详细说明
1.1.6调用相关
callable:函数用于检查一个对象是否可以调用,返回True调用对象有可能不成功,但是False是绝对调用失败
def func():
pass
func1 = 77
print(callable(func))
print(callable(func1))
1.1.7迭代器生成器相关
range:函数创建一个整数对象,一般用在for循环中
1.1.8数学运算
sum:求和
min:求最小值,可加key,key为函数名,通过函数的规则,返回最小值
l1 = [3, 2, 7, 9, 10]
print(min(l1)) l1 = [3, 2, 7, 9, -10, -1]
print(min(l1,key=abs)) dic = {'a': 3 ,'b': 2,'c': 1}
def func(x):
# x = a 第一次
# x = b 第二次
# x = c 第二次
return dic[x]
dic['a'] 3
dic['b'] 2
dic['c'] 1
print(min(dic)) # 默认比较字典的key 将最小的key返回
print(min(dic,key=func)) # 将dic中的每个键传入函数中,以函数的返回值比较最小。
print(dic[min(dic,key=func)]) # 将dic中的每个键传入函数中,以函数的返回值比较最小。
print(min(dic,key=lambda x: dic[x])) # 将dic中的每个键传入函数中,以函数的返回值比较最小。
print(dic[min(dic,key=func)])
l1 = [('a', 3), ('b', 2), ('c', 1)]
# print(min(l1))
print(min(l1,key=lambda x: x[1]))
max:求最大值,可以加key,key为函数名,通过函数返回最大值
1.1.9字符相关
str:与编码相关
bytes:与编码相关
1.1.10
len:返回长度
sorted:对可迭代对象进行排序操作
zip:将可迭代的对象作为参数,将对象中对应的元素打包成元祖,如果俩个列表元素长度不一致按照最短的操作
# l1 = [1, 2, 3]
# l2 = ['a', 'b', 'c', 5]
# l3 = ('*', '**', '***')
# iter1 = zip(l1, l2, l3)
# # print(iter1)
# for i in iter1:
# print(i)
filter:返回一个迭代器,类似列表推导式的筛选模式
map:返回一个迭代器,循环类似与列表推导式的循环模式
1.2 二星函数
1.2.1文字处理相关(慎重使用,尽量不用,有风险)
eval:执行字符串类型的代码,并返回最终结果。
msg ='1+2+3+4'
print(eval(msg))
#结果
10
exec:执行代码串类型的代码流
s4 = '''
for i in range(1,5):
print(i)
'''
print(s4)
#exec 执行字符串类型的代码流
exec(s4)
#结果
for i in range(1,5):
print(i)
1
2
3
4
complie:将字符串类型的代码编译。代码对象能够通过exec语句来执行或者eval()进行求值。(真没用过)
1.2.2查看内置属性
dir:函数不带参数时,返回当前范围内的变量;当函数带参数时,返回参数的属性与办法列表
1.2.3迭代器生成器相关
next:内部实际调用的是__next__的方法,返回迭代器的下一个项目
iter:函数用来生成迭代器(一个可迭代对象如何生成一个迭代器)
float:将整数或者是字符串转换成浮点数
1.2.4进制转换
bin:十进制转换成二进制并返回
oct:十进制转换成八进制并返回
hex:十进制转换成十六进制并返回
1.2.5 数字相关
bool:给参数转换成布尔类型
int:将一个字符串或者是数字转换为整型,有些浮点型的会直接截断小数直接取整
abs:返回一个数字的绝对值
round:保留浮点数的小数位数,默认是保留整数
pow:求幂
tuple:将一个可迭代对象转换成元祖,(如果是字典,默认将key放在元祖中)
reversed:将一个序列翻转,并返回此翻转序列的迭代器
dict:创建一个字典,与dic有区别的
set:创建一个集合
frozenset:返回一个冻结的集合
1.3 一星函数
__import__:函数用于动态加载类和函数
slice:用于生成一个切片对象,方便列表切片
format:与具体数据相关,主要用于各种小数,精算等(如果是数据分析用 的比较多)
bytearry:返回一个新字节的数组
memoryview:
ord:找到一个字符在ascii码中的位置
chr:与ord相反,输入数字找到对应ascii码中的字符
2.递归函数
人理解函数, 神理解递归
递归函数,就是函数自己调用本身,自己玩自己
def func1():
# print("我是谁")
# print("我在哪")
# func1()
#
# func1() # import sys
# print(sys.getrecursionlimit()) # def func1(n):
# n += 1
# print(n)
# func1(n)
#
# func1(0) # sys.setrecursionlimit(100000)
# 递归函数,会在内存空间不断地开辟新的内存空间,直到内存占满为止 # def func1(n):
# n += 1
# print(n)
# func1(n)
#
# func1(0) # 递归函数的应用: # os模块的三个知识点
# import os
#
# file_list = os.listdir("D:\python骑士计划3期") # (1)获取目录下所有文件和目录, 通过list返回
# # print(file_list)
#
# for file in file_list:
# file_path = os.path.join("D:\python骑士计划3期", file) # (2)将上级文件路径与文件拼接,返回文件路径
# # print(file_path)
# if os.path.isdir(file_path): # (2)判断文件是否是目录
# print("这是目录", file)
# else:
# print("这是文件", file) import os def read(path, n): # n = 0
file_list = os.listdir(path) # 获取目录下所有文件和目录, 通过list返回 for file in file_list:
file_path = os.path.join(path, file) # 将上级文件路径与文件拼接,返回文件路径 if os.path.isdir(file_path): # 判断文件是否是目录
print(" " * n, file)
read(file_path, n+1)
else:
print(" " * n, file) read("D:\python骑士计划3期", 0)
day9-基础函数的学习(四)的更多相关文章
- Python学习---基础函数的学习
1.1. 基础函数 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 灌输一个概念:Python中函数就是对象,函数和我们之前的[1,2,3],'abc ...
- day 83 Vue学习四之过滤器、钩子函数、路由、全家桶等
Vue学习四之过滤器.钩子函数.路由.全家桶等 本节目录 一 vue过滤器 二 生命周期的钩子函数 三 vue的全家桶 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 Vue的过滤 ...
- Python基础学习四
Python基础学习四 1.内置函数 help()函数:用于查看内置函数的用途. help(abs) isinstance()函数:用于判断变量类型. isinstance(x,(int,float) ...
- SVG 学习<四> 基础API
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- 【转载】salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解
salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解 建立好的数据表在数据库中查看有很多方式,本人目前采用以下两种方式查看数据表. 1.采用schem ...
- Android JNI学习(四)——JNI的常用方法的中文API
本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...
- (转)零基础入门深度学习(6) - 长短时记忆网络(LSTM)
无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就o ...
- 前端总结·基础篇·JS(四)异步请求及跨域方案
前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 前端总结·基础篇·JS(一)原型.原型链.构造函数和字符串(String) 前 ...
- 零基础该如何学习UI设计
零基础学习该如何学习UI设计,没有基础该怎么开始学习呢?UI设计可以说是入行门槛很低的职业了,而且随着互联网的快速发展,UI设计的市场前景也越来也好,更多的人看到了这个高薪的行业也开始心动了,想要在 ...
- SCARA——OpenGL入门学习四(颜色)
OpenGL入门学习[四] 本次学习的是颜色的选择.终于要走出黑白的世界了~~ OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式. 无论哪种颜色模式,计算机都必须为每一个像素保存一些数 ...
随机推荐
- Django里URL配置中name参数的作用
先看一下URL配置,新增了如下内容: 修改视图views.py 增加一个页面 现在要求是在name页面里面增加一个链接,显示详细信息.修改name页面 这个功能实现了,可是之前添加的那个name参数是 ...
- 大战Java虚拟机【1】—— 内存
前言 要了解Java虚拟机首先要知道的基础就是内存.虚拟机存在的意义就是对内存进行管理,因为不用人为的去管理每个对象的内存,所以才让java使用起来那么方便,不用像c.c++那样去free. 运行时数 ...
- 完美数据迁移-MongoDB Stream的应用
目录 一.背景介绍 二.常见方案 1. 停机迁移 2. 业务双写 3. 增量迁移 三.Change Stream 介绍 监听的目标 变更事件 四.实现增量迁移 五.后续优化 小结 附参考文档 一.背景 ...
- [六] 函数式接口的复合方法示例 predicate 谓词逻辑运算 Function接口 组合运算 比较器 逆序 比较链
复合的方法 有些函数式接口提供了允许复合的方法 也就是可以将Lambda表达式复合成为一个更加复杂的方法 之前的章节中有说到: 接口中的compose, andThen, and, or, negat ...
- 开源分布式数据库SequoiaDB在去哪儿网的实践
编者注: 中国的数据库行业也迎来了一波新的热点事件.分布式数据库这块新消息不断,也让大家开始关注中国的分布式数据库.首先是短短一周内,Pingcap和SequoiaDB巨杉数据库陆续宣布了C轮的数千万 ...
- xshell连接虚拟机详解--技术流ken
xshell连接虚拟机 第一步:网络模式更改为桥接模式 第二步:重启网络 [root@ken1 ~]# systemctl restart network 第三步:获取IP地址 输入命令ip a 第四 ...
- cocos creator主程入门教程(一)—— 初识creator
五邑隐侠,本名关健昌,10年游戏生涯,现隐居五邑.本系列文章以TypeScript为介绍语言. 我们在cocos creator新建一个Hello TypeScript项目,都会有一个assets/S ...
- 关于git的简单操作
首先这篇随笔我是不太想写的,因为网上有很多教程,我也是看廖雪峰大神的git教程自学的.还是一个小学生,就当一个学习笔记了,如果你想看大神的原版,请点击这里.我们原来都是用svn的,但是越来越觉得svn ...
- Vue移动端项目模板
一个集成移动端开发插件的Vue移动端模板包含1.css: 使用stylus开发css 集成reset样式文件 修改UI组件文件 统一样式处理(如主题色等)2.UI组件 使用热门的vant与mint-u ...
- 四边形不等式优化DP
记录一下,以免忘了 对于一个形如 \[dp[i][j]=min(dp[i][k]+dp[k][j]+w[i][j])\] 的转移方程(注意取最大值时不一定满足四边形不等式) 定理1 若对于\(a \l ...