#file1=open(‘C:\test\note1.txt’) #注意可能有转义符的情况
#file1=open(‘C:\test\note1.txt’) #可以多加一个\让特殊含义不生效
#file1=open(‘C:/test/note1.txt’) #可以用\替换成/,效果是一样的
#file1=open(r’C:\test\note1.txt’) #前方加一个r,让后方的转义符都不生效
#file1=open(r’C:\test\note1.txt’,‘r’) #r为读取模式,w为写入模式(清空之前的内容),a追加写入模式,如果不写第二个参数,则缺省值为读取模式
#file1.write(‘锄禾日当午,汗滴禾下土’)
#print(file1.read()) #读取文件内容,并打印出来
#file1.close()
#file1=open(r’C:\test\note1.txt’,‘a’)
#file1.write(‘床前明月光,疑是地上霜’)
#print(file1.read())
#file1.close()
#r,w,a要么只能读,要么只能写,不能同时进行读取和写入
#当需要同时进行读取和写入时,可以使用r+,w+,a+
#r+遇到不存在的路径会报错
#file1=open(r’C:\test\note1.txt’,‘w+’)
#file1.write(‘haha’)
#file1.seek(0) #光标回到文件开头的位置
#print(file1.read()) #如果上一行的seek(0)不写,则读取不到内容,因为写入内容之后光标位于内容的后方
#seek(m,n)函数,m表示光标向右偏移几位,m为0时表示位于文件开头;n默认为0,不需要写,也可以写1或者2在rb模式下才生效
#seek(6,0)这种表示向右偏移6位
#seek(2,1)表示从光标的当前位置,向右偏移2位
#seek(-1,2)表示从文件末尾,向左偏移1位
#file1=open(r’C:\test\note1.txt’,‘rb’)
#file1.seek(-3,2)
#file1.seek(2,1)
#print(file1.read())
#file1.close()
#r+,w+,a+都支持同时读取和写入,但是有一定的区别
#r+ 当文件不存在时,报错,写入时,覆盖之前的内容
#w+ 当文件不存在时,新建文件,写入时,清空之前的内容
#a+ 当文件不存在时,新建文件,写入时,接着以前的内容往后写
#file1=open(r’C:\test\note1.txt’,‘r+’)
#file1.write(‘sjjdjd’)
#file1.close()
#with open方法和open方法基本一致,不过不需要写close方法,另外注意缩进
#with open(r’C:\test\note1.txt’,‘w+’) as file1:
3# file1.write(‘qwert’)
3# file1.seek(0)
3# print(file1.read())
#with open也可以同时打开多个文件
#with open(r’C:\test\note1.txt’) as file1,open(r’C:\test\note2.txt’)as file2:
3# print(file1.read())
3# print(file2.read())
with open(r’C:\test\note1.txt’) as file1:
3# print(file1.read()) #read打开文件的所有内容
3# print(file1.readline(3))#读取一行内容,可以加一个参数n,表示读取几个字符
a=file1.readlines() #读取整个文件,返回值是一个列表,每个元素是一行
print(a)
for one in a:
print(one)