file
对象使用
open
函数来创建,下表列出了
file
对象常用函数
read
、
read
line、
read
lines
区别:
1.从文件
读取
指定的字节数,size如果未给定或为负则
读取
所有。
file
.
read
([size])
2.
读取
整行,包括 “\n” 字符。
file
.
read
line([size])
3.
读取
所有行并返回
列表
,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际
读取
值可能比 sizeint 较大, 因为需要填充缓冲区。
file
.
read
lines
([sizeint])
举个列子:
read
line
read
lines
本来是想
读取
并修改一个文件,想一边
读取
一边写入,发现
读取
出来是空。
原因:'w+'表示覆盖写入,这时f表示的是新建的那个文件,还没有写入任何
内容
,自然是空,这时不论是f.
read
lines
()还是f.
read
line()都是空。
with
open
(r'xxx', 'r', encoding='utf-8') as f:
print(f.
read
因为不管是 w 还是 w+ 模式,当使用这两种模式打开指定文件时,
open
() 函数都会立即清空文件
内容
,实际上都无法
读取
文件
内容
。上面程序使用
open
() 内置函数打开了
open
_test.py 文件,接下来程序访问了被
打开文件
的各属性。根据上面的介绍不难看出,如果希望调用
open
() 函数打开指定文件后,该文件中的
内容
能被保留下来,那么程序就不能使用 w 或 w+ 模式。从上面的输出结果可以看出,
open
() 函数默认
打开文件
的模式是“r”,也就是只读模式。在进行文件读写之前,首先要
打开文件
。
在利用
read
line()进行逐行
读取
文件的时候,我们一般使用以下程序:f=
open
("wenjian","r")whileTrue:fa=f.
read
line()if fa == '':breakprint(fa)f.close()这个程序的if语句fa == ''后面这个单引号里是没有blank space,也就是没有空格的,因为这里表示的是如果文件
读取
一直读到没有空间了,则停止这个循环,如果...
python
3 环境代码如下:
file
_path = os.getcwd() + "/test.txt"project_
file
=
open
(
file
_path,"r")#list_
file
= project_
file
.
read
lines
()for index, line in enumerate(project_
file
):print("index=%d,linex=%s"%(index,l...
我在使用
read
lines
()方法
读取
一个1.8万行的txt文件时,发现得到的结果却是空的,
with
open
('THUOCL_medical.txt','r',encoding='utf-8') as
file
,\
open
('THUOCL_new.txt','w',encoding='utf-8') as
file
2:
lines
=
file
.
read
lines
()
也就是debug的时候,
lines
是一个空
列表
,一开始我还以为是内存不够,后来搜索了一下相关的文章,感觉并不是这个问
if __name__ == '__main__':
with
open
('my_test.txt', 'a+') as m_
file
:
m_
file
.write("I'm wrote by
python
\n")
print(m_
file
.
read
())
以 w+ 或 a+ 方式
打开文件
, 发现读到空字符 。
前者很好理解,以 w+ 打开文...
File
"/usr/lib/
python
3.6/codecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't dec...
读取
文本文件时,发现
读取
内容
为空
,但是确实是有
内容
的。
if os.path.exists('linked
File
/new_urls.txt'):
with codecs.
open
('linked
File
/new_urls.txt','r','utf-8') as f:
if len(f.
read
()) !=0:
res_urls=f.
read
lines
()
return res_urls
查阅资料后,发现需要使用seek方法把
读取
指
python
中对同一文件同时使用
read
()和
read
line()/
read
lines
()函数注意点
1、使用了
read
()函数以后,文件流f被占用,所以f.
read
line()和f.
read
lines
()函数读出的结果均
为空
。所以在编程中如果同时用到这些函数,则有可能
出现
这种问题。
2、先使用了
read
lines
()后,在使用
read
line()得到的也会是空,因为
read
lines
占用了整个文件流
3、使用了
read
line(),再使用
read
lines
()
使用了
read
或者
read
line.
第一章
python
使用
open
函数
读取
txt文件
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章
Python
机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录第一章
python
使用
open
函数
读取
txt文件前言一、
open
()函数是什么?二、函数语法1.具体参数2.参数说明三、代码实现1.文件写入2.文件
读取
机器学习中需要用到对txt文件的读写
一、
open
()函数是什么?
python
ope
Python
2.7.8
f =
open
(path, 'r')
text_src = [line.strip() for line in f.
read
lines
()]逐行
读取
一个文本文件(utf-8编码)到一个list,发现list的元素个数比文本文件的行数小得多。
经调查,发现list
内容
不完整,说明
read
lines
函数返回的不是所有行的
列表
。