返回顶部
首页 > 资讯 > 后端开发 > Python >python文件操作二
  • 963
分享到

python文件操作二

操作文件python 2023-01-31 03:01:49 963人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

1、常用函数: fileObject.read([size])size为读取的长度,以byte为单位。如果不指定参数,表示一次性读取全部内容,以字符串形式返回,并且每一行结尾会有一个"\n"符号。代码示例1: with open("tex

1、常用函数:

  1. fileObject.read([size])
    size为读取的长度,以byte为单位。如果不指定参数,表示一次性读取全部
    内容,以字符串形式返回,并且每一行结尾会有一个"\n"符号。
    代码示例1:
    with open("text.txt","r") as pf:
    content = pf.read()
    print content

结果:
abcede
123
this is a test文件操作jfedcba

代码示例2:

with open("text.txt","r") as pf:
    content = pf.read(2)
    print content

结果:
读取:ab

  1. fileObject.readline( [size] )
    一行,如果给定了size,有可能返回的只是一行的一部分,以字符串的形式返
    回,并且结尾会有一个换行符"\n"。读完一行,文件操作标记移动到下一行的
    开头
    列题1
with open("text.txt","r") as pf:
    content = pf.readline()
    print content

结果:
大学之道,在明明德,在亲民,在止于至善。
列题 1:

with open("text.txt","r") as pf:
    content = pf.readline(15)
    print content

结果:
大学之道,

  1. fileObject.readlines( [size] )
    把文件每一行作为一个list的一个成员,是一个字符串,并且结尾会一个换行符"\n",并返回这个list。这个函数的内部是通过循环调用readline()来实现的。如果指定了size参数,表示读取文件指定内容的长度,此时就有可能只能读取文件的一部分

with open("text.txt","r") as pf:
    content = pf.readlines()
    print content
    for line in content:
        print line

结果:
python文件操作二

  1. fileObject.write( str )
    把str写到文件中,默认是不加换行符的,所以如果想换行的话,得手动加入换行符'
with open("test.txt","w") as pf:
    pf.write("我是最帮的!!\n学习文件写入操作")

结果:
我是最帮的!!
学习文件写入操作

  1. fileObject.writelines( seq )
    把seq(序列)的内容全部写到文件中(多行一次性写入)。也不会自动加入换行符
    如:
content = "我是最帮的!!\n学习文件写入操作,加油!!!"
with open("test.txt","a") as pf:
    pf.writelines(content)

结果:
我是最帮的!!
学习文件写入操作我是最帮的!!
学习文件写入操作,加油!!!

  1. fileObject.close()
    File 对象的 close()方法刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再进行写入。当一个文件对象的引用被重新指定给另一个文件时,python 会关闭之前的文件。用 close()方法关闭文件是一个很好的习惯。如果文件关闭后,还对文件进行操作就会产生ValueError错误,但如果不及时关闭文件,有可能产生句
    柄泄露,丢失数据
    #打开文件准备写文件
fp = open( "c:\\test.txt",'w')
print u"文件名:", fp.name
#关闭文件
fp.close()
print u"文件是否关闭:", fp.closed

结果:
文件名: test.txt
文件是否关闭: True

  1. fileObject.flush()
    该函数是将缓冲区中的内容写入硬盘

  2. fileObject.tell()
    返回文件操作标记的当前位置,以文件的开头为基准点
with open("test.txt","r") as pf:
    print u"当前文件操作标记位置为:", pf.tell()
    line = pf.readline()
    print u"读取一行后文件操作标记位置为:", pf.tell()

结果:
当前文件操作标记位置为: 0
读取一行后文件操作标记位置为: 23

  1. fileObject.seek( offset[, from ] )
    tell()方法告诉你文件内的当前位置;换句话说,下一次的读写会发生在文件开头这么多字节之后。seek(offset [,from])这是一个文件定位函数,该方法改变当前文件的位置。 Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置。如果from被设为0(默认值),这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位置。如果它被设为2,那么该文件的末尾将为参考位置。需要注意,如果文件以a或a+的模式打开,每次进行写操作时,文件操作标记会自动返回到文件末尾。测试文件test.txt,内容如下:
with open("test.txt","r") as fp:
    str = fp.read(18)
    print u"读取的字符串是 : ", str
    # 查找当前位置
    position = fp.tell()
    print u"当前文件位置 : ", position
    # 把指针再次重新定位到文件开头
    position = fp.seek(0, 0)
    str = fp.read(18)
    print u"重新读取字符串 : ", str

结果:
读取的字符串是 : 我是最帮的!
当前文件位置 : 18
重新读取字符串 : 我是最帮的!

fileObject.truncate( [size] )
把文件裁成规定的大小,默认的是裁到当前文件操作标记的位置。如果size比件的大小还要大,依据系统的不同可能是不改变文件,也可能是用0把文件补到相应的大小,也可能是以一些随机的内容加上去。

with open("test.txt","r") as fp:
    print "Name of the file: ", fp.name
    line = fp.readline()
    print "Read Line: %s" % (line)
    print fp.tell()
    # Try to read file now
    remainingLine = fp.readline()
    print "Read Line: %s" % (remainingLine)
  • linecache
    模块允许从任何文件里得到任何的行,并且使用缓存进行优化,常见的情况是从单
    个文件读取多行。
  • linecache.getlines(filename)
    从名为 filename 的文件中得到全部内容,输出为列表格式,以文件每行为列表中的一个元素,
    并以 linenum-1 为元素在列表中的位置存储
  • linecache.getline(filename,lineno)
    从名为 filename 的文件中得到第 lineno 行。这个函数从不会抛出一个异常–产生错误时它将
    返回”(换行符将包含在找到的行里)。
    如果文件没有找到,这个函数将会在 sys.path 搜索。
  • linecache.clearcache()
    清除缓存,如果你不再需要先前从 getline() 中得到的行
  • linecache.checkcache(filename)
    检查缓存的有效性。如果在缓存中的文件在硬盘上发生了变化,并且你需要更新版本,使用
    这个函数,执行此函数会讲淘汰的内容删除。如果省略 filename,将检查缓存里的所有条目。
  • linecache.updatecache(filename)
    更新文件名为 filename 的缓存。如果 filename 文件更新了,使用这个函数可以更新
  • linecache.getlines(filename)
    返回的列表。如果出错,则返回空列表。

    1. 删除空行的方法
    fp = open(r'test.txt')
    aList = []
    for item in fp:
        if item.strip():
            aList.append(item)
    fp.close()
    fp = open(r'test2.txt', 'w')
    fp.writelines(aList)
def delblankline(infile, outfile):
    """ Delete blanklines of infile """
    infp = open(infile, "r")
    outfp = open(outfile, "w")
    lines = infp.readlines()
    for li in lines:
    if li=='\n': #不同操作系统下可能会有不同
    print u'空行'
    if li.split():
        outfp.write(li)
    infp.close()
    outfp.close()

if __name__ == "__main__":
delblankline("c:\\1.txt","c:\\2.txt")

列题:
数据文件:data.log
20160215 000148|0|collect info job start|success|
20160215000153|0|collect info job
end|success|resultcode = 0000
20160216000120|0|collect info job start|success|
20160216000121|0|collect info job
end|success|resultcode = 0000
20160217000139|0|collect info job start|success|
20160217000143|0|collect info job
end|success|resultcode = 0000
数据分析需求:
每行内容需要生成以每行
首年月日为名称的文件,
文件内容写入|0|后的所有
行内容(也包括|0| )

算法分析:
遍历每一行,每行取头8个字母
新建文件,文件名为首8个字母,然后把第15字符后的所有字
符拷贝到文件中
关闭文件

fp =open("e:\\data.log")
for line in fp.readlines():
    filename = line[:14]
    content = line[14:]

    with open("e:\\"+filename+".txt","w") as fp2:
        fp2.write(content+"\n")

fp.close()

--结束END--

本文标题: python文件操作二

本文链接: https://lsjlt.com/news/187632.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python文件操作二
    1、常用函数: fileObject.read([size])size为读取的长度,以byte为单位。如果不指定参数,表示一次性读取全部内容,以字符串形式返回,并且每一行结尾会有一个"\n"符号。代码示例1: with open("tex...
    99+
    2023-01-31
    操作 文件 python
  • 第十二章 Python文件操作
    12.1 open()open()函数作用是打开文件,返回一个文件对象。用法格式:open(name[, mode[, buffering[,encoding]]]) -> file objectname 文件名mode 模式,比如以...
    99+
    2023-01-31
    十二章 操作 文件
  • 三十二、python操作XML文件
    ''' XML:模块 xml总结 1、解析 str 文件 tree,ElementTree,type root,Element,type 2、操作 Element: tag,text,fin...
    99+
    2023-01-31
    操作 文件 三十二
  • Python文件操作之二进制文件详解
    目录1.二进制读取模式rb读取模式将读取到的内容写入到文件总结1.二进制读取模式 rt 读取文本文件(默认值) rb 读取二进制文件 file_name = ...
    99+
    2024-04-02
  • 6.2Python文件的操作(二)
    目录 目录 前言 (一)文件的定位 (二)文件的读操作 ==1.read()方法== ==2.read...
    99+
    2023-01-30
    操作 文件 Python
  • python 文件操作(二) 替换性修改
      正常情况我们想要仅对文件某一行的内容进行修改,而不改变其他内容,在原文件的基础上不能修改,因为当我们对原文件进行写操作时,如果原文件里面有内容,就会清空,在这种情况下,只能对文件进行替换性修改:即重新创建一个文件,把原文件的内容按行复...
    99+
    2023-01-30
    操作 文件 python
  • python 文件操作api(文件操作函数)
    python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目录名:...
    99+
    2022-06-04
    操作 文件 函数
  • 【Python】文件操作
    一、文件的编码 思考:计算机只能识别:0和1,那么我们丰富的文本文件是如何被计算机识别,并存储在硬盘中呢 答案:使用编码技术( 密码本)将内容翻译成0和1存入 编码技术即:翻译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译回...
    99+
    2023-10-21
    python
  • python 文件操作
    python基本的文件操作,包括 open,read,write对文件操作流程:1.打开文件,得到文件句柄并赋值给一个变量2.通过句柄对文件进行操作3.关闭文件 新建一个txt文件,内容是《Yesterday When I Was...
    99+
    2023-01-30
    操作 文件 python
  • python-文件操作
    文件操作 1.  读 / 写 操作 读取: r (read):只能读不能写,文件不存在就报错 ​#打开文件:    object = open('某txt文件',mode = 'r',encoding = '编码')​#读取文件所有内...
    99+
    2023-01-31
    操作 文件 python
  • python文件操作
    1. 文件操作 open 打开 f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes 打开一个文件的时候获取到的是一个文件句柄. ...
    99+
    2023-01-30
    操作 文件 python
  • Python--文件操作
    文件处理流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件  r模式,默认模式,文件不存在则报错 w模式,文件不存在则创建,文件存在则覆盖 a模式,文件不存在则创建,文件存在则不会覆盖,写内容会以...
    99+
    2023-01-30
    操作 文件 Python
  • python---文件操作
    一、对文件操作流程1.打开文件,得到文件句柄并赋值给一个变量2.通过文件句柄对文件进行操作3.关闭文件二、文件打开模式f = open("file_test","r",encoding = "utf-8")    #打开文件,“读模式”,只...
    99+
    2023-01-31
    操作 文件 python
  • python 操作文件
     python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。 操作前需要 import os; 返回当前目录,不包括文件名: os.getcwd(); 返回指定目录下的所有文件和目录名:os.listdir("...
    99+
    2023-01-31
    操作 文件 python
  • python 文件操作2
    继续讲解文件操作的其他内置方法读取文件句柄的指针指针,就是说,程序读取文件到哪一行了。f = open("Yesterday.txt",'r',encoding="utf-8...
    99+
    2023-01-30
    操作 文件 python
  • Python的文件操作
    读操作 file = open('测试文件',mode='r',encoding='utf-8') print(file.read())   写操作 file = open('测试文件',mode='w',encoding='utf...
    99+
    2023-01-30
    操作 文件 Python
  • Python--6 文件操作
    文件通常用于存储数据或应用系统的参数。Python 提供了 OS、 os.path、 shutil 等模块处理文件, 其中包括打开文件、 读写文件、 复制和删除文件等函数。 python文件操作基本流程:   1.打开文件,或者新建立一个...
    99+
    2023-01-30
    操作 文件 Python
  • Python文件IO操作
    文件IO常用操作:open打开read读取write写入close关闭readline行读取readlines多行读取seek文件指针操作tell指针位置打开操作:open(file, mode='r', buffering=-1, enc...
    99+
    2023-01-31
    操作 文件 Python
  • python文件的操作
    首先看看在pycharm输入文件句柄,怎样显示他的定义 f = open('student_msg', encoding='utf-8', mode='a+') # 打开一个文件,赋值给f print(type(f), f) # f文件句...
    99+
    2023-01-31
    操作 文件 python
  • 3 Python文件操作
    open 以什么编码方式存储文件,就以什么编码方式打开 f = open('d:\模特主妇护士班主任.txt',encoding='utf-8') # 绝对路径打开 f.close() f = open('模特主妇护士班主任',enc...
    99+
    2023-01-31
    操作 文件 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作