Python文件打开读取写入方法实用案例

目录
  • 前言
  • open()方法
    • 1. "w",打开一个新的文件并写入内容
    • 2. "r",打开文件并读取内容
    • 3. "a",以追加内容的模式打开
    • 4. 创建一个空的文件
  • with open()方法
    • 1. 打开并读取文件,每次读取一行内容
    • 2. 打开并写入文件
  • 实用案例
  • 总结

前言

读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。

读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),或者把数据写入这个文件对象(写文件)。

python中对文件的操作方法经常使用open和with open。下面分别介绍

open()方法

正常情况下,想要打开一个文件并且保证该文件会被关闭。使用open()方法,最后一定要保证关闭文件对象,即调用close()方法。原因是当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘同时释放资源。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。语法格式如下

文件对象f = open(文件名,文件对象访问模式)

其中的文件对象访问模式如下

1. "w",打开一个新的文件并写入内容

这里对象访问模式使用"w",打开文件时,文件存在则清空内容,不存在则创建新的

f = open('1.txt','w')
f.write('今天一直在下雨\n')
f.write('把我整抑郁了\n')
f.write('o(╥﹏╥)o\n')
f.close()

2. "r",打开文件并读取内容

f = open("1.txt",'r')
print(f.read())        #读取全部内容
f.close()
f = open("1.txt",'r')
print(f.readline())    #一个f.readline()只读第一行
f.close()
f = open("1.txt",'r')   #全部读,但是用列表的方式展示
print(f.readlines())
f.close()

3. "a",以追加内容的模式打开

上面使用"w"的时候文件存在则会清除内容,如果我们想要打开一个已经存在内容的文件并追加内容则可以使用"a"。如下打开存在的"1.txt"文件,并追加一行内容

f = open('1.txt','a')
f.write("帅哥出来玩吗")
f.close()

4. 创建一个空的文件

open("12.txt",'w').close()

with open()方法

open()使用后需要调用f.close()方法,但是每次都这么写实在太繁琐,所以,Python引入了with语句来自动帮我们调用close()方法。推荐使用with open()

with用于创建一个临时的运行环境,运行环境中的代码执行完后自动安全退出环境。

1. 打开并读取文件,每次读取一行内容

方法一:

with open('1.txt','r') as file:
    for line in file:     #依次遍历
        #print(line)      #默认输出的内容会多一个换行
        print(line[:-1]) 

将网页的数据进行保存时有时需要指定编码类型,比如为utf-8。不确定可以查看网页源码的编码类型,这里保存和网页编码类型一样就行

with open('./2.html','w',encoding='utf-8') as f:

方法二:

直接使用循环也可以

for line in open("1.txt",'r'): print(line[:-1])

2. 打开并写入文件

with open('2.txt','a') as file:
    file.write("hello\n")
    file.write("are you ok?\n")

实用案例

需求

打开文件1.txt,1.txt的内容为一行行的ip地址。每次从里面读取一行数据加上"http://",然后将其保存到另外一个新的文件中

for ip in open("1.txt",'r'):
    url = "http://" + ip
    with open("url.txt",'a',,encoding="utf-8") as f: #这里必须以追加的模式打开,不然每次新增内容前都会清空
        f.write(url)
print('ok')

总结

到此这篇关于Python文件打开读取写入方法的文章就介绍到这了,更多相关Python文件打开读取写入内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python 读写、创建 文件的方法(必看)

    python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目录名:os.listdir() 函数用来删除一个文件:os.remove() 删除多个目录:os.removedirs(r"c:\python") 检验给出的路径是否是一个文件:os.path.isfile() 检验给出的路径是否是一个目录:os.path.isdir() 判断是否是绝对路

  • Python 文件读写操作实例详解

    一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()2.返回指定目录下的所有文件和目录名:os.listdir()3.函数用来删除一个文件:os.remove()4.删除多个目录:os.removedirs(r"c:\python")5.检验给出的路径是否是一个文件:os.path.isfile()6.检验给出的路径是否是一个目录:os.path.isdir()7.判断是

  • python进阶教程之文本文件的读取和写入

    Python具有基本的文本文件读写功能.Python的标准库提供有更丰富的读写功能. 文本文件的读写主要通过open()所构建的文件对象来实现. 创建文件对象 我们打开一个文件,并使用一个对象来表示该文件: 复制代码 代码如下: f = open(文件名,模式) 最常用的模式有: 复制代码 代码如下: "r"     # 只读 "w"     # 写入 比如 复制代码 代码如下: >>>f = open("test.txt",&

  • Python文件打开方式实例详解【a、a+、r+、w+区别】

    本文实例讲述了Python文件打开方式.分享给大家供大家参考,具体如下: 第一步 排除文件打开方式错误: r只读,r+读写,不创建 w新建只写,w+新建读写,二者都会将文件内容清零 (以w方式打开,不能读出.w+可读写) w+与r+区别: r+:可读可写,若文件不存在,报错:w+: 可读可写,若文件不存在,创建 r+与a+区别: fd = open("1.txt",'w+') fd.write('123') fd = open("1.txt",'r+') fd.wr

  • python文件处理fileinput使用方法详解

    这篇文章主要介绍了python文件处理fileinput使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.介绍 fileinput模块可以对一个或多个文件中的内容进行迭代.遍历等操作,我们常用的open函数是对一个文件进行读写操作. fileinput模块的input()函数比open函数更高效和好用,体现在: input()函数生成一个迭代器,保证了在遇到大文件的读取时不会占用太大的内存. 用fileinput对文件进行循环遍历

  • python文件的md5加密方法

    本文实例讲述了python文件的md5加密方法.分享给大家供大家参考,具体如下: 简单模式: from hashlib import md5 def md5_file(name): m = md5() a_file = open(name, 'rb') #需要使用二进制格式读取文件内容 m.update(a_file.read()) a_file.close() return m.hexdigest() if __main__ == '__init__': print md5_file('d:/

  • Android平台基于Pull方式对XML文件解析与写入方法详解

    本文详细讲述了Android平台基于Pull方式对XML文件解析与写入方法.分享给大家供大家参考,具体如下: XML技术在跨平台的情况下的数据交互中得到了广泛的应用,假如我们需要开发一个Android应用程序,需要同服务器端进行数据交互,通过XML文件可以很方便的在Android平台和服务器之间进行数据传输,具体实现涉及到对XML文件进行解析及写入的技术.本文实现在Android平台上基于Pull方式对XML文件解析的技术. XmlPullParser是一个Java实现的开源API包(源码下载地

  • Python文件去除注释的方法

    本文实例讲述了Python文件去除注释的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/python # -*- coding: GBK -*- #writer:xmnathan #py文件去注释 import re import os import ConfigParser Python='CleanNote' def ReadIni(path,section,option):#文件路径,章节,关键词 #读取ini cf=ConfigParser.ConfigParser

  • Python文件相关操作和方法汇总大全

    目录 os.path 文件 文件读写 文件删除 文件复制移动 目录 创建目录 删除目录 复制目录 枚举目录 遍历(游走)目录 文件名模式匹配 fnmatch glob 临时文件与目录 前言: Python中有多个内置模块来操作文件与目录(os.os.path.shutil.pathlib等等). os.path os.path模块主要用于获取文件的属性,包含以下几种常用方法: 路径操作: print(os.path.splitext('.info')) # ('.info', '') print

  • python文件与路径管理方法

    Python标准库的OS模块对操作系统的API进行了封装,并且使用统一的API访问不同操作系统的相同功能.OS模块包含与操作系统的系统环境.文件系统.用户数据库以及权限进行交互的函数.充分使用OS模块就能够编写出跨平台的程序. path = os.getcwd() print(path) print(os.listdir('.'))#显示当前目录下的文件及文件夹 os.path模块用来对文件和路径进行管理,显然,它会包含很多拆分路径的函数.os.path模块中与拆分路径相关的函数有: 1.spl

  • 利用Python将list列表写入文件并读取的方法汇总

    目录 1.writelines()直接写入 2.str转化为字符串写入 3.for循环写入 4.使用.join函数修改列表 读取数据 附:还有写csv文件和excel文件的方式 总结 1.writelines()直接写入 l=["A","B","C","D"] f=open("k.txt","w") f.writelines(l) f.close() 该方法写入直接写入列表元素 2.st

  • python文件操作的简单方法总结

    文件操作1 #文件操作流程:1.打开文件,得到一个文件句柄:通过文件句柄操作文件:关闭文件. #将文件打开文件赋给file1,test_file为文件名,utf-8为文件编码;file1是文件的全量内容 data1 = open("test_file",encoding="utf-8").read() print(data1) #打开文件,获取文件句柄file2,后续通过file2这个文件句柄对文件进行各种操作方法,默认文件以只读模式打开,只读时不能对文件进行写操作

  • C#中File静态类对文件的读取写入

    提供用于创建.复制.删除.移动和打开单一文件的静态方法,并协助创建 FileStream 对象. 一.读文件: 1.返回字符串: string readText = File.ReadAllText(@"c:\temp\MyTest.txt"); 2.返回字符串数组: string[] readText = File.ReadAllLines(@"c:\temp\MyTest.txt", Encoding.UTF8); 3.返回字节数组: byte[] buffer

随机推荐