自动化-day3-Python基础(2)
Python基础语法
※基本逻辑:非空即真、非0即真
(),{},[],''都为空
1、数据类型(需整合进day2)
1)字典(dictionary)
字典格式为{key:value}格式,本质为特殊的list,但效率较list高。
但于list不同之处在于字典为无序的数据集合,需通过key来实现对字典的访问。
list为有序的数据集合,需使用位置来访问该元素。
a.创建并访问字典
i.创建字典

ii.访问字典

※两种方式不同点在于get方法如果访问的key不存在,则会返回none,而中括号方式则会报错。另外get方法后还可以制定一个默认参数,当get的key不存在的话则显示默认参数
b.修改字典
i. d['money']=500
使用大括号的方式添加键值对。如果key存在,则会改变对应的value
ii. d.setdefault('money',500)
使用setdefault方法添加键值对。如果key存在,也不会改变对应的value
iii. d.clear()
清空字典,清空后字典变为空字典
iiii. d.update(a=1,b=2)
新增字典键值对
d.删除字典
i. d.pop('username')
ii. del d['username']
※删除字典时如果key不存在,则会报错。所以再删除字典参数前,务必判断键值对是否存在
※需要判断字典key是否存在时,建议使用XXX in dict。因为如果使用dict.key会使字典先转为list,从而降低效率。
d.其他常用方法
d.item():将字典转为一个二维数组进行输出。
2)元祖(tuple)
元祖也是一个特殊的list,但元祖与list的区别就是元祖一旦被创建,就不能再改变元祖中的元素。
元祖的创建格式为小括号
元祖只有两个方法可用
a. index()方法
用于查找元祖中元素对应的下标
b. count()方法
用于统计元祖中元素出现的次数
※由于小括号对应的方法较多,当创建单元素元祖时需要在元素后加一个逗号‘,’,否则无法形成单元素元祖。

2、字符串其他常用方法:
print(s.count('a'))#统计字符出现次数
print(s.index('a'))#查找字符下标,不存在会报错
print(s.find('a'))#查找元素下标,不存在回返回-1
print(s.strip(','))#屏蔽字符串两端的空格和换行符,也可以自定义屏蔽两端的任意字符
print(s.rstrip())#屏蔽字符串右端的空格和换行符
print(s.lstrip())#屏蔽字符串左端的空格和换行符
print(s.replace('a','A',1))#把a替换成A,1次
print('{name},{value}'.format(name=111,value=222))#字符串格式化
print(s.upper())#将字符串全部转大写
print(s.lower())#将字符串全部转小写
print(s.zfill(4))#将s扩充为4为,用0补充空位
print(s.isdigit())#判断是否为纯数字,返回值为布尔型
s.isspace()#判断是否全部为空格
s.isupper()#判断是否全部为大写字母
s.islower()#判断是否全部为小写字母
print(s.endswith('a'))#判断是否以XXX开头
print(s.startswith('c'))#判断是否以XXX结尾
print('my car'.capitalize())#将首字母大写
print('{name},{value}'.format_map({"name":"111","value":"222"}))#字符串格式化,区别在于存的是字典
print(s.center(50,'*'))#将字符串s居中显示,并扩充长度至50,用*补齐
print(s.title())#将每个单词的开头字母大写
print(s.split(','))#将字符串按‘,’进行分割
print(s.join())#连接可循环变量(元祖、数组、字典等)的每个元素
3、切片
4、深拷贝
![]()
浅拷贝是将变量指向被拷贝变量的内存地址;
深拷贝是将变量值重新赋值给新变量;
因此,当需要对变量进行操作时。若使用浅拷贝,由于指向的是同一个内存地址,会导致两个变量被同时更新。
※只有deepcopy方法为完全深拷贝,copy方法和切片赋值为部分深拷贝(多维数组只对最外层数组进行深拷贝,内层数组为浅拷贝)其余方法皆为浅拷贝
4、文件操作
操作文件流程为3步,即打开-操作-关闭
打开
使用open方法:变量名=open(文件路径和文件名,打开模式)
打开模式主要有r\w\a\r+\w+\a+等
r:只读模式。如果文件不存在,返回异常
w:覆盖写模式。文件不存在则创建,存在则完全覆盖源文件
a:追加写模式。文件不存在则创建,存在则在源文件最后追加写入
+:与r\w\a一同使用,在原功能基础上增加同时读写功能
操作
读操作
f.read()从文件中读入整个文件内容
f.readline()从文件中读入一行内容,形成一个字符串
f.readlines()从文件中读入所有行,以每行为元素形成一个list
写操作
f.write(s)向文件写入字符串s
f.writelines(s)直接将列表类型的个元素连接起来写入文件f
指针操作
打开文件打开模式为r、w时,指针在开头。a时指针在结尾。
因此当打开文件时进行读操作都会在指针位置进行。
所以需要用到seek方法调整指针位置
f.seek(X)该方法只有两个参数值可选,0代表开头,2代表结尾。
关闭
使用.close()关闭文件,释放文件的使用授权。



浙公网安备 33010602011771号