总结来源取自于视频教程小甲鱼,感谢小甲鱼视频
这里print前面有空格不能取消,因为这相当于c语言里面的{和}用来区分if语句是否结束,print()打印字符串单引号和双引号都可表示字符串
如果字符串中包含单引号或者双引号怎么办,使用转义字符\,比如使用转义字符应该是
这个r表示他是一个原始字符串,没有经过转义字符处理,效果如图
长字符串:在一个字符串前面加上三个“,后面就直接放一个很长的字符串即可
引入随机数给变量secret
type(变量)用来获取变量的数据类型 isinstance(a,int)是来判断a是不是int类型如果是,返回ture,不是返回false
幂指数运算:使用**代表阶乘3**2也即3*3
assert(断言):当其后面条件为假,程序自动崩溃并且抛出异常
遍历favourite每个元素,print的时候在每个元素后面加个空格
range用法:遍历的时候从range第一个参数到第二个参数为止,步长为第三个参数
数组.append(元素) //添加元素
数组.extend(数组) //添加一个数组,注意添加的数组外围要用[]包含
数组.insert(第几位,元素)
数组.remove(元素)
del 数组[i] //删除数组i个元素
数组.pop() //弹出数组中最后一个元素,或者在括号里面填个i弹出第i个元素
切片:
这里从第一个元素到第三个元素(不包含第三个)显示
数组.count(元素) //统计元素在数组中出现的次数
数组.index(元素) //返回元素位置
数组.reverse() //翻转数组
数组.sort() //排序
对数组的复制可以通过list7=list6[:]通过切片来复制也可以通过 list8=list6来复制,区别是切片复制是值复制,对list6继续操作对list7没有影响,但是list8是指针复制,list8也会随着list6的改变而改变
元组和数组:数组外面是大括号[]元组是小括号()如果元组只有一个元素(4,)这样而不是(4),后者会当做一个int来处理。元组的添加元素可以这样处理
format用法:
还有
help(list)可以查看list的帮助文档
函数调用:def 函数名,下面写好函数内容,再写函数名回车就是调用函数
一个函数当中的变量叫做局部变量,但是通过globle在函数中定义一个变量会自动更改成全局变量
python 支持函数嵌套,一个函数当中可以嵌入另一个函数,
nonlocal的用法,这里是当一个函数中包含一个函数,内嵌函数的变量要用nonlocal来定义
lambda表达式,也即匿名函数,这里x为函数参数,冒号后面为返回的值
过滤器filter的用法:filter(函数名或者none,iterable)这里如果第一个参数是none,会剔除iterable当中所有的0和false,留下非0和true输出,
如果是函数名,那么会将所有iterable所有的元素分别输入到函数中得到返回值非0的输出
range(10)为0到9,那些数模2不为0呢,输出13579,如果上述过程用一个lambda表达式表示,为
非常简洁
map用法:将第二个参数映射到第一个参数中输出
字典:用大括号{}表示,每个元素中冒号前面映射冒号后面的
修改值可以这样做dict1['鱼c工作室']=‘lalala’
字典fromkey的用法
遍历字典所有的key操作,同理可以遍历所有的eachvalue
检查key是否存在
查看一个变量或者数组的地址
集合:也用{}表示,如果每个元素没有用映射关系来表示,那么就默认为集合否则就是字典
集合特点:自动清除重复元素,不可以通过索引来查找元素
用法:set(列表)得到一个不重复的集合如果用frozenset(列表)得到的集合不能再add元素
OS是操作系统的意思
pickle(泡菜):使用场景,如果一个天气预报的软件,在软件内部需要包含许多的城市,那么需要占据很大的内存,但是如果我们现将这些城市放到另一个文件中,然后程序直接调取这个文件这样就节省内存
上面的许多城市用一个city来保存,使用pickle技术,wb是二进制写入,放到city_data.pkl当中,然后在另一个程序中引入city,这里rb是读取二进制
异常的处理:try except用法
如果在下面再加上finally:那么不管是否异常都会执行finally的语句
self用法:在类的函数里面第一个参数必须是self
类的构造函数:_init_
类的变量要想变成私有变量名前面加上__即可
在子类当中的构造函数如果先要调用父类构造函数有两个方法
第一个是先调用父类的构造函数,在写子类的方法
第二种方法是先调用super函数
__del__(self):类的析构函数
运算符的重载:在一个类里面重写+—*/函数可以重载类的加减运算(具体的运算方法名可以查表)
或者
在定义类里的变量名时候不要和函数名相同,
属性:
比如当类中一个属性被设置时自动触发类里面的setattr方法
生成器:yield相当于return,只不过它下次返回的值和上次不同
导包
__name__如果是在主程序中,等于__main__如果是导入的 ,等于包名
导包:加入这句话不同文件夹也可以直接导包
Python后续补充:
外部传参:在cmd中传入参数执行python脚本,在python内部获取参数运行
比如在jenkins中cmd运行脚本9.py后面传了2个参数用空格隔开
D:
cd D:\software
start python 9.py 11 12
在python内部
import sys
获取第一个参数sys.argv[1]
获取第二个参数sys.argv[2]