三元运算 : 优势减少代码量
形式 : val = 1 if 条件 else 2 # val的值如果条件成立 为 1 所在位置的值 如果条件不成立 为 2所在的值
编码:常见编码 ascii 占用一个字节 GB2312: 2个字节 unicode: 2-4个字节 utf-8:unicode的优化 中文占3个字节
文件操作 : 打卡文件 - 读取操作/写入操作 - 关闭文件
打开文件: open(file="文件路径", mode="文件打开模式", encoding="编解码模式")
mode: r 读取模式 只能读 w 写入模式 覆盖写 a 追加模式 在原来基础上追加 r+ 读写模式 先读后写 w+ 先写后读 (如果原先有数据会被覆盖)rb:以二进制读打开
encoding: 表示以什么格式打开并以什么格式写入 一般有 ascii gbk utf-8
操作:一般有读操作 格式为 .read() .readline() 写操作:.write() .tell() 查看光标所在位置 .seek(字节数)移动光标位置 .truncate(字节数)从0快开始截到所写的字节数为止 .flush()强制刷新缓存 (由于内存和硬盘读写不一致 一般内存中存够一定数据量才会写入硬盘)
关闭文件: 文件操作结束后 需要关闭
函数: 作用减少重复的代码量
形式:
def 函数名(): # 括号内可以先定义形式参数 调用函数的时候向括号内传入实际参数 也叫实参 定义形式参数的时候还可以定义默认的参数 如果不穿实参那么会调用默认参数执行 关键参数指定了参数名的参数 非固定参数 定义时不确定用户传几个参数 所以用非固定参数 形式:*形参名 **形参名
return xxx # 把xxx 的值返回给调用该函数的操作 把return的东西叫做函数返回值 return后函数结束
全局变量和局部变量: 全局就是在一个程序中一改动影响整个程序值的变量 局部变量就是在程序某个局部生效的变量
作用域 : 就是指某个东西的生效范围 比如上面的全局变量和局部变量 他们的作用范围一个是整个程序 一个是程序的某个局部
嵌套函数: 函数里面还有函数
匿名函数: 没有函数名的函数 (因为没有名字 所以只能单次使用 使用完被回收)作用 省代码量 复杂度只支持到三元运算
高阶函数: 接受一个或多个函数作为输入 或return 返回另外一个函数
递归:函数中调用了本身 成为递归
闭包:独立的空间内 存在独立的变量 和 函数的东西 并且可被调用
装饰器: 自身是个函数 用特定的格式给其他函数扩展功能
生成器: 两种第一种函数中带yield 第二种 (x * x for x in range(10)) 特点: 生成器像一个公式 问他要数据时他才会执行 要数据的方式 for循环 或 next(生成器名)
内置函数:
abs() 取绝对值
dict() 字典
help() 帮助
min()取最小值
max()取最大值
all()空列表为真 或列表中的所有东西为真才为真
any() 数据中有一个为真就为真
dir() 列出当前程序所存在的所有变量
vars()显示变量名和变量值
locals()打印局部变量
global()打印全局变量
hex()转换成16进制
oct()转换为8进制
bin()转为2进制
sorted()排序
enumerate()枚举 把索引和值列出来
eval()按照解释器规则把字符串转成代码(只能处理单行代码)可以拿到返回值
exec()按照解释器规则把字符串转成代码(可以处理多行代码)不可以拿到返回值
ord() 返回字母的ascii值
chr() 输入ascii数字返回字母
sum()求和 求出所有的数字的和
map() 传一个函数 传一个参数 将参数交给函数处理返回
filter() 传一个函数 传一个参数 函数返回假就将参数过滤
print() 打印
callable()判断是否可调用 函数是可以调用的 列表不行
repr()把穿进去的参数编程字符串
zip() 把传进去的参数组合成元祖
round() 保留n位小数
hash() 单向加密
set() 集合
学习笔记二
原文:https://www.cnblogs.com/xiaoxiaoxiamiaixingxing/p/10030119.html