Day4_操作记录
---恢复内容开始---
1.判断
# 非空即真、非0即真
# 不为空的话就是true,是空的话就是false
# 只要不是0就是true,是0就是false
# 布尔类型
# True False
2.交换变量
a = 1
b = 2
b,a= a,c #交换两个变量的值,Python底层帮你引入了一个的第三方变量在交换
3.常用字符串的使用方法

res = ','.join(string.ascii_lowercase)
#1、它把一个list变成了字符串
#2、通过某个字符串把list里面的每个元素连接起来
#3、只要是可以循环的,join都可以帮你连起来

names='abcd'
name_list = names.split()#根据某个字符串,分割字符串,什么也不传的话,是以空格分割的
数据库插入数据:

4.集合Set(天生去重)
a.拷贝 import copy
lis = [1,1,2,3,4,5,6,8] #循环删list里面的数据的时候,结果会不正确
#浅拷贝 l2 = lis
#深拷贝 l2 = copy.deepcopy(lis)
#浅拷贝和深拷贝的区别就是深拷贝会重新开辟一个内存空间
s4 = {1,2,3}
s5 = {1,4,6}
差集
在一个集合里有,在另一个集合里面没有的
S4里面有,s5里面没有的
取一个集合存在,另一个不存在的元素
print( s4 - s5) #取差集
print(s4.difference(s5)) #取差集
对称差集
俩集合里面都没有
去掉俩集合里面都有的
print(s4 ^ s5)
print(s4.symmetric_difference(s5))
s4.add('ss') #加元素
s4.pop()#随机删一个
s4.remove('ss')#指定删除哪个
s4.update({1,2,3}) #把另外一个集合加进去
s4.isdisjoint(s5)#如果没有交集的话返回true
5.文件操作
a. 打开文件:
方式一:f = open('文件名','打开方式',encoding='utf-8') #需要手动关闭 f.close()
方式二 :with open('geci','a+') as f: #可以自动关闭
b.打开方式:
| 访问模式 | 说明 |
|---|---|
| r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
| w | 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
| a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
| rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。 |
| wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
| ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
| r+ | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
| w+ | 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
| a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
| rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 |
| wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
| ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
c.文件指针和其他操作:
f.seek(0) #移动文件指针到最前面.0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。
str.zfill(width) #width -- 指定字符串的长度。原字符串右对齐,前面填充0
fp.read([size]) #size为读取的长度,以byte为单位
fp.readline([size]) #读一行,如果定义了size,有可能返回的只是一行的一部分
fp.readlines([size]) #把文件每一行作为一个list的一个成员,并返回这个list。其实它的内部是通过循环调用readline()来实现的。如果提供size参数,size是表示读取内容的总长,也就是说可能只读到文件的一部分。
fp.write(str) #把str写到文件中,write()并不会在str后加上一个换行符
fp.writelines(seq) #把seq的内容全部写到文件中(多行一次性写入)。这个函数也只是忠实地写入,不会在每行后面加上任何东西。
fp.tell() #返回文件操作标记的当前位置,以文件的开头为原点

浙公网安备 33010602011771号