read

第六篇、文件处理之文件的高级应用

好久不见. 提交于 2019-11-26 13:31:52
目录 第六篇、文件处理之文件的高级应用 一、可读可写 二、文件内指针移动 三、文件的内置方法 课后练习的测试总结经验 第六篇、文件处理之文件的高级应用 一、可读可写 r+:在后面追加 w+:清空文件的功能是w提供的 更加慎用 a+:a有追加的功能,指针在文件的末尾,没啥用 二、文件内指针移动 需要对文件内的指针移动的操作才能对文件的内容进行修改 硬盘上没有修改的说法,硬盘只能覆盖,新内容覆盖旧内容 with open('36r.txt', 'r+t', encoding='utf-8') as fr: fr.readline() fr.write('nick 真衰呀') # 写在文件的最后一行 三、文件的内置方法 seek() tell() read(n) truncate(n) seek()移动指针方法 seek(offset,whence): offset代表文件指针的偏移量,偏移量的单位是字节个数,whence可以写0,1,2;0相当于文件头开始;1相当于当前文件所在位置;2相当于文件末尾 # seek() with open('36r.txt', 'rb') as fr: print(f"fr.seek(4, 0): {fr.seek(4, 0)}") # 0相当于文件头开始;1相当于当前文件所在位置;2相当于文件末尾 # fr.seek(0,2) # 切换到文件末尾

从文件操作到字符编码

百般思念 提交于 2019-11-26 09:57:14
相对路径和绝对路径 绝对路径 从电脑的根目录开始到你文件的地址的叫做绝对路径 E:\下载内容\谷歌浏览器下载\ASSSD_6751.zip 相对路径 相对于当前文件夹下的文件路径 ./ASSSD_6751.zip 基本的文件操作 读取文件内容 Python中使用open()方法可以打开某个具体的文件,open()方法内写入文件路径。 file_path = 'read.txt' ##文件相对于当前文件的位置 r = open(file_path,'r') ## 'r'是只读模式 text = r.read() print(text) # Hello World! r.close() 还可以进行写入操作 file_path = 'read.txt' ##即使这个文件不存在,'w'模式下会帮你创建这个文件 w = open(file_path,'w') ## 'w'是只写操作,并且会覆盖原来的文件内容 w.write('Hi,my name is Gredae') # Hi,my name is Gredae ##文件里会显示这一段话 w.close() 还有一种写入方式是追加 file_path = 'read.txt' ##即使这个文件不存在,'a'模式下会帮你创建这个文件 w = open(file_path,'a') ## 'a'是追加操作,并不会覆盖原来的文件内容 w

文件三种打开模式

送分小仙女□ 提交于 2019-11-26 09:54:28
文件的三种打开方式 文件操作的基础模式有三种(默认的操作模式为r模式): r模式为read w模式为write a模式为append 文件读写内容的格式有两种(默认的读写内容的模式为b模式): t模式为text b模式为bytes t,b这两种模式均不能单独使用,都需要与r/w/a之一连用. 文件打开模式之r模式 read,只读模式,只能读不能写,文件不存在时报错。 f = open('test.py','r',encoding='utf8') # 只读 # windows的操作系统默认编码为gbk,因此需要使用utf8编码 print(f.read()) # 读取文件所有内容, # ***** print(1,f.readline()) # 读取文件第一行 print(2,f.readline()) #读取文件第二行 for i in f: print(i) #可以使用这个方法循环文件 print(f.readable()) #是否可读 f.close() 文件打开模式之w模式 w: 只能写,不能读,文件存在的时候回清空文件后再写入内容;文件不存在的时候会创建文件后写入内容。 f=open('test.py','w',encoding='utf8') #只写 #清空后再写 print(f.readable()) f.write('abcde') f.flush()

8.07 文件的三种打开模式

不问归期 提交于 2019-11-26 09:41:09
8.07 文件的三种打开模式 文件操作的基础模式有三种(默认的操作模式为r模式): r模式为read w模式为write a模式为append 文件读写内容的格式有两种(默认的读写内容的模式为b模式): t模式为text b模式为bytes 需要注意的是:t、b这两种模式均不能单独使用,都需要与r/w/a之一连用。如rt,wb... 一、文件打开模式之r模式 r: read,只读模式,只能读不能写,文件不存在时报错。 f = open('path',mode = 'rt') # path为文件的路径 data = f.read() print(data) f.close() f.read()读取文件指针会跑到文件的末端,如果再一次读取,读取的将是空格。 由于f.read()一次性读取文件的所有内容,如果文件非常大的话,可能会造成内存爆掉,即电脑卡死。因此可以使用f.readline()/f.readlines()读取文件内容,f.readable()判断文件是否可读。 f = open('path',mode = 'rt') # path为文件的路径 data1 = f.readable() # True data2 = f.readline() # 读一行 data3 = f.readlines() # 用list存储读出的文本 f.close() 二、文件打开模式之w模式 w:

FileReader.result

无人久伴 提交于 2019-11-25 23:39:24
FileReader.result 该属性返回文件的内容。此属性仅在读取操作完成后才有效,并且数据的格式取决于用于启动读取操作的方法。 FileReader ] **result** 句法 var file = instanceOfFileReader .result 值 适当的字符串或 ArrayBuffer ]基于哪种读取方法来启动读取操作。该值是 null 读数是否尚未完成或未成功。 结果类型如下所述。 方法 描述 readAsArrayBuffer() 的 result 是JavaScript ArrayBuffer 包含的二进制数据。 readAsBinaryString() 该 result 包含在一个字符串的文件的原始的二进制数据。 readAsDataURL() 该 result 是一个字符串 data: 表示文件的传输数据的URL。 readAsText() 该 result 是一个字符串文本。 例 此示例展示了一个函数, read() 该函数从file input读取文件。它的工作方式是创建一个 FileReader 对象并为加载事件创建一个侦听器,以便在读取文件时 result 获取并将其传递给提供给的回调函数 read() 。 内容作为原始文本数据处理。 var fileInput = document.querySelector('input[type=

python中read,readline,和readlines的区别 并逐行输出

情到浓时终转凉″ 提交于 2019-11-25 22:10:51
python中有神奇的三种读操作:read、readline和readlines read() : 一次性读取整个文件内容。推荐使用read(size)方法,size越大运行时间越长 readline() :每次读取一行内容。内存不够时使用,一般不太用 readlines() :一次性读取整个文件内容,并按行返回到list,方便我们遍历 下面看代码: #!/usr/bin/python # -*- coding: utf-8 -*- import linecache f = open("a.txt") lines = f.read() print lines #for i in lines: # print i # print "===" print (type(lines)) f.close() print 35*"=" fr = open("a.txt") r = fr.readline() print(type(r)) #print r while r: print r, r = fr.readline() print "rrr=",r fr.close() print 35*"=" frs = open("a.txt") rls = frs.readlines() print(type(rls)) print rls for i in rls: print i, frs

MySQL锁会不会,你就差看一看

冷暖自知 提交于 2019-11-25 16:47:50
数据库锁知识 不少人在开发的时候,应该很少会注意到这些锁的问题,也很少会给程序加锁(除了库存这些对数量准确性要求极高的情况下),即使我们不会这些锁知识,我们的程序在一般情况下还是可以跑得好好的。因为这些锁数据库隐式帮我们加了,只会在某些特定的场景下才需要手动加锁。 对于UPDATE、DELETE、INSERT语句,InnoDB会自动给涉及数据集加排他锁(X) MyISAM在执行查询语句SELECT前,会自动给涉及的所有表加读锁,在执行增、删、改操作前,会自动给涉及的表加写锁,这个过程并不需要用户干预 表锁 首先,从锁的粒度,我们可以分成两大类: 表锁 :开销小,加锁快;不会出现死锁;锁定力度大,发生锁冲突概率高,并发度最低 行锁:开销大,加锁慢;会出现死锁;锁定粒度小,发生锁冲突的概率低,并发度高 不同的存储引擎支持的锁粒度是不一样的==:InnoDB行锁和表锁都支持、MyISAM只支持表锁!InnoDB只有通过索引条件检索数据才使用行级锁==,否则,InnoDB使用表锁也就是说,InnoDB的行锁是基于索引的! 表锁下又分为两种模式: 表读锁(Table Read Lock)&& 表写锁(Table Write Lock) 从下图可以清晰看到,在表读锁和表写锁的环境下:读读不阻塞,读写阻塞,写写阻塞!读读不阻塞:当前用户在读数据,其他的用户也在读数据,不会加锁 读写阻塞