学习第二周

经历了五一假期,平常上班有点忙,所以一放假就进入了散养状态。整个五一基本上都是这么忽忽悠悠过来的,课的进度就落后了好多。但是因为时间原因,我决定在这一两天内就把课程的进度赶完,废话不多说直接开始。

第二周的课程就与之前接触过的高级语言有了一定的偏差,索性偏差不是很大。首先说说模块的事,模块类似于C中的类库(ps:不太喜欢Java,但是貌似Java里面也是这么叫的),相当于一个已经封装好了的方法的总集,Python在调用模块的时候总是会在当前目录下进行搜索。所以在引用模块时候尽量放在同一目录下,防止出错。课中讲了两个简单的模块以及一些方法,从而引出了一些关于Python的环境变量的讨论。

sys模块

sys.argv : 打印脚本的绝对路径。这里面就不得不提几个有意义的小知识了,首先是Python的官方包都会在一个bin文件下,而我们在第三方下载或者是自己写的封装包一般都会存在site—package下。所以我们就会在那个里面找一些小包包之类的。

os模块:主要是系统的交互。

os.system:只执行不保存,os.system(“dir”)打印当前目录。

os.popen:对象内存地址,返回的只是地址,如果想读取内容还需要加上.read()方法。

os.mkdir:创建新目录,不是文档。

模块只是初识这两个较为简单的模块,并且也只介绍了一些浅显的方法,后来的学习中还是会继续学习一些模块和方法的。

.pyc:这个文件的意义并不是那么大,Python是解释型语言,但是也会生成一个编译型的文件,它会对部分方法进行编译并保存,方便下次调用时加快运行速度。Pycode object位于内存中,用于存放编译结果。

三元判断:

二进制的数据类型:bytes,在Python3.x中字符串和二进制数据是严格禁止混用的,而且在获取网络数据进行信息传输的时候只能使用二进制信息流。

string---->bytes 使用encode

bytes---->string 使用decode

列表:Python中较为常见的一种存储方式,在计算机中万事万物都是从0开始。所以列表里第一个元素的位置就是第0个。

切片[0:2] :这里需要注意的是切片是会有首元素但是不包括尾部元素(东北人的顾头不顾腚)。切片都是从左到右,所以在采用逆序(也就是定义位置时从后往前)时要注意那个位置在前,那个在后。

.append()方法:追加,在列表的尾部追加。

.insert()方法:插入不能批量插入,只能一个个操作

del [位置] = “新值”    .remove(“值”) .pop()如果无下标默认删除最后一个。

.index(“值”)返回值得位置

.count(“值”)计算值出现的次数

.reverse()反转列表

.sort()排序符号-->数字-->大写字母--->小写字母

.extend() 合并两个列表

.copy()复制列表,但是会是浅层的复制,只复制第一层,想要深度copy需要调用copy模块。

课间小作业:购物车:输入工资,打印商品列表,根据商品编号购买,检测余额随时退出,打印已购买和余额,用了一小会就写出来了但是感觉很Low

,果然在Alex的课中居然还提到了我的写法,然后被否定了,之后会粘上他的写法,先看看自己搞的。

字符串方法:

.capitalize() 首字母大写

.count()  统计字母出现次数

.center(int,"")打印int个字符,空的位置由""内容来补充,字符串位于中间

.endwith("") 判断由""内容结尾

.find() 输出字符位置,可以用于字符串切片

.format()引用

.format_map(字典)  引用一个字典

.isalnum()是否是数字与字母的组合

.isalpha ()  是否是纯英文字符串

.isdecimal () 是否为十进制

.isdigit ()是否是整数

.isidentifier ()判断是否是合法的标识符

.isnumeric ()是否为纯数字

.istitle ()

.isprintable()是否可打印

.join()将字符以特定形式链接为字符串

.ljust (int,"") 右侧占位空位置用""内容来补充

.lower ()  大写<-----小写

.upper () 与上个方法相反

.replace()  替换

.rfind ()  最右侧检测值的下标

.split() 按空格化为列表

.swapcase ()大写 小写互换

字典 :字典时无序的,没有顺序只能通过键值来进行定位

.pop() 删除

.popitem()如果不输入值默认随机删除

.get()查找,不确定是否存在的查找

.setdefault() 查找,如果不存在返回一个值

.update() 合并两个字典,交叉的覆盖

.item() 将字典转化为列表

. fromkeys()初始化新字典

三级列表:对于三级列表因为是一开始所以选择了一个很low的写法,就是循环套循环套循环(说实话因为这个弄得我很晕....)

整个写的与Alex写的差不多就是有些细微的差别,因为最近工作有点忙所以发的晚了些,但是我会继续努力的,早日回归IT。作业在下一周的开头粘出来。

猜你喜欢

转载自www.cnblogs.com/Jicc-J/p/10813746.html