f=open(‘E:\a.txt’,‘w’)#w指以只写的方式打开一个文件,文件名叫a.txt,只能写,不能读,路径保存在E盘
#E:\指相对路径,保存在e盘,不加的话,相对路径,保存在同级目录下
f.write(‘北京我爱你’)
f.close()
#-------------------------------------------
f=open(‘a.txt’,‘r’)
content=f.read()
print(content)
f.close()
#---------------------------------------------------
f=open(‘a.txt’,‘r’)
content=f.read(2)#括号里的数字指的是读出几个字符
print(content)
f.close()
#----------------------------------------------
f=open(‘a.txt’,‘r’,encoding=‘utf-8’)#如果读取不了,加上encoding=gbk或者encoding=utf-8
content=f.readline()#readline指的是按照行的格式读取
print(content)
content=f.readline()
print(content)
f.close()#注意:readline 是按行输出,输一次出一次。
#一定要区分开read(),read(n),readline,readlines的区别
f=open(‘a.txt’,‘r’,encoding=‘utf-8’)
content=f.readlines()
print(content)
f.close()
---------------------------------------------
f=open(‘a.txt’,‘w’,encoding=‘utf-8’)
f.write(‘北京你好\n’)
f.write(‘南京你好’)
f.close()
#怎么增加内容
f=open(‘a.txt’,‘a’,encoding=‘utf-8’)
f.write(‘北京你好吗,我爱你’)
f.close()
#------------------------------------------------
f=open(‘a.txt’,‘r’,encoding=‘utf-8’)
x=f.read(3)
print(x)
print(f.tell())#tell指的是光标的位置,按照字节来数数
f.close()
#---------------------------------------------------------
f=open(‘a.txt’,‘r’,encoding=‘utf-8’)
x=f.read(2)
print(x)
f.seek(2,0)#第一个参数指偏移的位移量(偏移的字节数),第二个参数指:0是开头,1是当下,2是结束,用于2进制
x=f.read(3)
print(x)
f.close()
#文件的重命名
import os#os是操作系统,import指导入模块
os.rename(‘b.txt’,‘a.txt’)#第一个参数指原来的文件名,第二个参数是要定义的文件名
#文件删除
import os
os.remove(‘b.txt’)
#创建文件夹
import os
os.mkdir(‘abc’,0x777)
#获取当前目录
import os
p=os.getcwd()
print§
#删除文件夹
import os
os.rmdir(‘abc’)
#判断存在是否存在文件或目录
import os
b=os.path.exists(‘a.txt’)#判断存在是否存在文件或目录
print(b)
#创建多层文件夹
# import os
# os.makedirs(‘a//b//c’)
import copy
a=3
b=3
print(a==b)
print(id(a)==id(b))
c=3
d=c
print(id©==id(d))
a=[1,2,3]
c=a
print(id(a)==id©)
# a=[1,2,3]
# b=[1,2,3]
# print(id(a)==id(b))
a.append(4)
print©
a=3
b=a
a=4
print(b)
#===============================================
import copy
a=3
b=copy.copy(a)
c=copy.deepcopy(a)
print(id(a)==id(b)==id©)
a=[1,2,3]
b=a
c=copy.copy(a)
d=copy.deepcopy(a)
print(id(a)==id©)
print(id(a)==id(d))
print(id(a))
print(id©)
print(id(d))
#copy与deepcopy的区别
a=[1,2,3,[4,5,6]]
b=a
c=copy.copy(a)
d=copy.deepcopy(a)
a[3].append(9)
print©#输出改变,copy只拷贝表层
print(d)#输出不改变,deepcopy深拷贝从里到外,不管几层一块拷贝
####################################################################
########################迭代器+++++++++++++++++++++++++++++++++++++++
a=[1,2,3]
b=iter(a)#迭代器
print(next(b))
print(next(b))
print(next(b))
print(type(b))
def hs(n):
i=0
while i<n:
yield i
i+=1
a=(hs(1000))
print(next(a))
print(next(a))
print(next(a))
print(next(a))
print(next(a))
#=====================================
def fbnq(n):
a,b=0,1
i=0
while i<n:
a,b=b,a+b
yield a
i+=1
f=fbnq(10)
for x in f:
print(x)
def a(b):
b()
def x():
print(‘123’)
a(x)
=====================
#装饰器
import time
def hs(f):#装饰器的函数,f接受被装饰的函数名
def neibu():#装饰内部函数
start=time.time()
f()#调用被装饰的函数
end=time.time()
print(end-start)
return neibu#装饰器返回内部函数,(内部代表的是包装盒)
@hs#@加函数名,代表下面的函数被hs装饰
def jisuan():
print(‘123456’)
jisuan()
#---------------------------------
import time
def hs(fuc):
def nb(cs):
print(’####################’)
fuc(cs)
print(’####################’)
return nb
@hs
def hs1(name):
print(name,‘开演唱会’)
hs1(‘刘德华’)
#----------------------------------