python之路——2023年1月30日之前的几天学习笔记汇总

作者:zb

day2——20221114

1、python2的raw_input函数 = python3的input函数

2、模块分为标准库+第三方库:标准库不需要安装可以直接使用,例如sys模块和os模块,而第三方库需要下载安装

3、模块名不能和文件名同名,否则导入的就是当前文件而不是py的模块

4、三方库会存放在lib\site-packages,标准库放在lib下

5、执行py代码时会先在同级目录下的__pycache目录下生成.pyc文件,pyc文件是py解释器预编译的字节码文件

day3——20221115

1、三元运算

a, b, c = 1, 3, 5
d = a if a > b else c

  d = 5
2、进制
二进制转换十六进制,四位合一法转换,如果无法凑足四位,那么就小数点左边或者右边补0,补足四位
十六进制数表示方法,要么后缀H,要么前缀0X,BH为十六进制数11,0X23为十六进制数23.
十六进制转换为二进制同理
四位二进制表示一位十六进制,因为十六进制最大表示到15,刚好四位二进制的1刚好是15,所以四位二进制可以表示一位十六进制
3、bytes数据类型
py3专门的数据类型,和字符串数据类型是两回事
py3中字节包和字符串不可以互相操作
socket网络编程数据传输,在py3中必须是使用bytes数据类型进行数据传输
5、列表
a、列表的增删改查:
查:
列表切片,list[-1]表示取出列表的最后一个元素,list[-2]表示取出列表倒数第二个元素,以此类推
增:
列表的insert方法,list.insert(1, "str")插入下标为1的元素位置
改:
直接list[下标]=重新赋值
删除:
list.remove("元素值")
del list[下标]
list.pop方法,默认删除最后一个元素;输入下标list.pop(1),则删除指定下标的元素
b、查找列表元素的下标值
list.index("元素值")
c、统计列表的重复元素数
list.count("元素值")
d、清空列表
list.clear()
e、翻转列表
list.reverse()
f、列表的排序
list.sort()
g、列表的合并
list1.extend(list2)
变量的删除同样可以使用del 变量名
h、列表的复制
list2 = list1.copy()
copy方法,可以copy内层列表的内存地址,但是外层列表无法copy
完整复制:
import copy
list2 = copy.copy(list1)
list2 = copy.deepcopy(list1)
浅copy:用于创建联合账号
list2 = copy.copy(list1) # import copy
list2 = list1[:]
list2 = list(list1)
深copy:
list2 = copy.deepcopy(list1) # import copy
6、循环
步长循环range(1, 10, 2)
列表步长切片list[0👎2] = list[::2]
7、元组
元组只能查,又叫做只读列表
只有两个方法count index

day5———20230103
字符串操作
1、字符串的带有两个下划线的方法不用管它,是py内部的方法
2、方法
.capitalize方法:表示首字母大写
.count方法:统计字符串字母个数
.center方法:将字符串置于中间其余空间用指定字符代替
.endswith方法:判断字符串是否以某字符/串结尾,返回布尔值
.expandtabs方法:通过tabsize参数,将字符串中的tab键转换成多个空格
.find方法:返回字符索引,从而可以利用索引值对字符串切片
.format方法:格式化输出字符串
.format_map方法:通过传递字典格式的参数格式化输出字符串
.isalnum方法:判断字符串是否是阿拉伯数字+字母
.isalpha方法:是否为纯英文字符
.isdecimal方法:是否为十进制数
.isdigit方法:是否为整数
.isidentifier方法:是否是合法的变量名
.islower方法:是否小写
.isupper方法:是否大写
.isnumeric方法:是否全是数字字符,小数也不行
.isspace方法:是否空格
.istitle方法:是否首字母大写
.isprintable方法:是否可打印,tty设备文件不可打印
.isupper方法:是否全为大写
.join方法:指定分隔符,将字符串连接起来
.ljust方法:类似于center方法,指定字符串输出长度和补充字符string.ljust(50, "*"),rjust方法在左侧
.lower方法:将大写变为小写
.upper:变大写
.lstrip:去掉左边的空格
.rstrip:去掉右边的空格
.strip:两边空格同时去掉
.maketrans:str.maketrans('abcde', '12345'),用12345去替换abcde,然后通过'string'.translate(p)进行字符替换
.replace:"string".replace('s', 'S'),字符替换,只想替换一个则"string".repalce('s', 'S', 1)
.rfind:从左往右,找到最右边的值的下标返回
.split:将字符串按指定分隔符拆分成列表的元素
.splitlines:按照换行符拆分
.startwiths:判断以某字符开头
.swapcase:大写变小写,小写变大写
.zfill:不够长度的用0填充

day6————20230110
一、字典
1、特性
⑴字典是无序的,因为字典没有下标
⑵字典通过key取值,value = info['key']
⑶info.values(),打印字典中所有不包括key的值
⑷info.keys()打印所有不包括值的key
⑸info.setdefault('key', 'value'),去字典中查找key,找到则返回key的值,找不到则新建key: value
⑹dictionary1.update(dictionary2),将两个字典合并,有交叉key的则进行value的更新,没有交叉的则新增key: value
⑺info.items(),将字典转换为列表,字典元素转换为元组
⑻初始化生成一个新字典
2、查
print(info['key'])
print(info.get('key')),存在则查找,无值则打印None
⑴查找key是否存在于字典中:
print('key' in info),存在打印True,不存在打印False
3、改
直接改值,info['key'] = new_value
4、增
直接通过info['key'] = new_value增加key-value到字典中
key存在就是修改value,key不存在就是增加key-value
5、删除
⑴del方法
del info['key']
⑵info.pop()方法
info.pop('key')
⑶info.popitem()方法
随机删除
6、多级字典嵌套
⑴改
一层一层的去改,info['外层key1']['内层key2']['列表索引']
7、字典的循环
for i in info:
print(i, info[i])
for k, v in info.items():
print(k, v)
上面的循环比下面的循环高效,因为下面的循环要先把字典变成列表

二、三级菜单

day7————20230112
一、回顾
1、列表、元组都是有序的
2、列表支持增删改查、元组是只读列表
3、字符串
字符串不可以修改
4、列表可以嵌套任何东西
5、字典
无序,因为字典通过key寻找值,不需要通过下标找值

二、集合
集合无序,不重复
作用:
1、去重,将列表转换为集合,即可去重
list_1 = ['1', '4', '5', '7', '3', '6', '7', '9']
list_1 = set(list_1)
print(list_1, type(list_1))
2、关系测试,测试两组数据之间的关系
交集
list_1.intersection(list_2)
list_1 & list_2
并集
list_1.union(list_2)
list_1 | list_2
差集
list_1.difference(list_2):1有2没有
list_1 - list_2 # 1有2没有
子集
list_1.issubset(list_2):1是否是2的子集
父集
list_1.issuperset(list_2):1是否是2的父集
对称差集
list_1.symmetric_difference(list_2):将1和2中没有交叉的部分取出
list_1 ^ list_2
判断是否有交集
list_1.isdisjoint(list_2) # 1、2有交集返回False,无交集返回True
3、集合的增删改查
增:
list_1.add(999)
增加多项:
list_1.update([888, 777, 666])
指定删除:
list_1.remove(999)
list_1.discard(999) # remove指定删除元素不存在会报错,而discard不会报错
随机删除:
list_1.pop()
4、判断x是否是s的成员
x in s
x not in s

posted @ 2023-01-30 13:02  投资交易大师  阅读(21)  评论(0)    收藏  举报