iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >第九次课:Python文件操作
  • 770
分享到

第九次课:Python文件操作

第九次操作文件 2023-01-31 01:01:08 770人浏览 泡泡鱼

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

摘要

  python文件操作的方式有多种,这里学习两种,第一种是直接调用内置函数,无需引入模块;第二种就是引入os和shutil模块,这部分内容将在后续课程中介绍。下面就先开始学习第一种:1.读写操作    open(file,op):打开指定

  python文件操作的方式有多种,这里学习两种,第一种是直接调用内置函数,无需引入模块;第二种就是引入os和shutil模块,这部分内容将在后续课程中介绍。下面就先开始学习第一种:

1.读写操作

    open(file,op):打开指定文件file,若文件不存在则创建。其中file为文件名,file的路径默认为程序所在的位置,也可指定file的路径。

参数op:

(1)“r”或无:默认为“r”即简单打开文件。若省略参数op,文件不存在则会报错,写文件操作也会报错;

(2)“w”:打开并可写文件。若文件已存在,则以前的内容将被清除;

(3)“a”:向文件中追加文本。向已存在的文件中追加内容;

(4)“b”:以二进制方式读取,提高安全性;

(5)“r+”:以读写模式打开
(6)“w+”:以读写模式打开 (参见 w )
(7)“a+”:以读写模式打开 (参见 a )
(8)“rb”:以二进制读模式打开
(9)“wb”:以二进制写模式打开 (参见 w )
(10)“ab”:以二进制追加模式打开 (参见 a )
(11)“rb+”:以二进制读写模式打开 (参见 r+ )
(12)“wb+”:以二进制读写模式打开 (参见 w+ )
(13)“ab+”:以二进制读写模式打开 (参见 a+ )

print '**********读操作**********'
fone=open('1.txt')             #打开文件并将内容赋值给fone
print(fone.read())               #读取文件,将文件内容全部输出
# print(fone.readline())      #读取文件的第一行,可以指定范围
# print(fone.readlines())    #把内容的每一行作为列表中的一部分,并返回列表
print(fone.mode)               #获取当前open()模式
fone.close()                         #关闭文件

如果文件不存在将出现以下错误:
ioError: [Errno 2] No such file or directory: '1.txt'
正常运行结果:
**********读操作**********
This is first write example
Two line
Three line
Four line
r
**********读操作**********
This is first write example
r
**********读操作**********
['This is first write example\n', 'Two line\n', 'Three line\n', 'Four line\n']
r

如果在该模式下执行一个写操作,程序是报错的:

fone.write('这是第一个写的操作')

IOError: File not open for writing

为了显示不出现乱码的情况,这里需要引入codecs模块
import codecs
print '**********写操作**********'
print '**********覆盖写入**********'
ftwo=codecs.open('1.txt','w')
print '写入一条内容'
ftwo.write('This is first write example\n')
print '写入多条内容'
ftwo.writelines(['Two line\n','Three line\n','Four line\n'])
ftwo.close()
print '**********追加写入**********'
fthree=codecs.open('1.txt','a')
print '写入一条内容'
fthree.write('This is append content example')
print '写入多条内容'
fthree.writelines(['This','is','append','content','example'])
fthree.close()

注:使用open函数进行文件操作时,一定要记得使用close函数进行关闭;此外使用open函数打开并写文件时,就算文件存在,Python也会先删除原有文件然后创建新文件,也即文件的内容也随之删除!

2.常用操作函数和属性

(1)read([size]):size为读取的长度,以byte为单位;

(2)readline([size]):读一行,如果定义了size,有可能返回的只是一行的一部分;

(3)readlines([size]):把文件每一行作为一个list的一个成员,并返回这个list。如果提供size参数,size是表示读取内容的总长,也就是说可能只读到文件的一部分;

(4)write(str):把str写到文件中,write()并不会在str后加上一个换行符;

(5)writelines(seq):把seq的内容全部写到文件中(多行一次性写入),不会在每行后面加上任何东西;

(6)close():关闭文件。python会在一个文件不用后自动关闭文件,不过这一功能没有保证,最好还是养成自己关闭的习惯。如果一个文件在关闭后还对其进行操作会产生ValueError异常;

(7)flush():把缓冲区的内容写入硬盘;如打印一行文字print '文件的名称是:%s'%fopen.name,调用该方法将这行内容插入到文本中;

(8)tell():返回文件操作标记的当前位置,以文件的开头为原点,常用来文件定位;

(9)next():返回下一行,并将文件操作标记位移到下一行。把一个file用于for … in file这样的语句时,就是调用next()函数来实现遍历的;

(10)seek(offset[,whence]):将文件打操作标记移到offset的位置。这个offset一般是相对于文件的开头来计算的,一般为正数。但如果提供了whence参数就不一定了,whence可以为0表示从头开始计算,1表示以当前位置为原点计算。2表示以文件末尾为原点进行计算。需要注意,如果文件以a或a+的模式打开,每次进行写操作时,文件操作标记会自动返回到文件末尾;

(11)encoding:指定文件的编码格式;

(12)closed:查看当前文件的状态,关闭返回True,打开返回False;

(13)name:返回文件的名称;

(14)mode:返回文件当前的模式;

import codecs
f1=codecs.open('1.txt','ab+')
print '文件名称是:%s'%f1.name
f1.flush()
f1.seek(40,1)
#print f1.next()
print f1.tell()
print f1.closed
print f1.mode
f1.close()
print f1.closed

3.with语句

在Python中有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。

读取一个文件,如果不用with语句,代码如下:

fopen=codecs.open('file.txt')
fopen.read()
fopen.close()

代码的这类写法会有两个问题。一是可能忘记关闭文件句柄;二是文件读取数据发生异常,没有进行任何处理。

这时候with语句就显现出了它的优势了。除了有更优雅的语法,with还可以很好的处理上下文环境产生的异常。下面是with版本的代码:

print '用with语句打开单个文件'
with codecs.open('file.txt') as fopen:
print(fopen.read())
print '用with语句打开多个文件'
with codecs.open('1.txt','r',encoding='gbk') as f1,codecs.open('2.txt','r') as f2:
print f1.read()
print f2.readline()

如上可以看出,Python的with语句是提供一个有效的机制,让代码更简练,同时在异常产生时,清理工作更简单。

--结束END--

本文标题: 第九次课:Python文件操作

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 第九次课:Python文件操作
      Python文件操作的方式有多种,这里学习两种,第一种是直接调用内置函数,无需引入模块;第二种就是引入os和shutil模块,这部分内容将在后续课程中介绍。下面就先开始学习第一种:1.读写操作    open(file,op):打开指定...
    99+
    2023-01-31
    第九次 操作 文件
  • 第一课:Python读取.csv文件
    我的是Python3.6版本的,可能有些和Python2.7很多不一样的地方。 下面用Python打开一个test1.csv文件,可以看到运行的结果在下面。 ...
    99+
    2023-01-31
    一课 文件 Python
  • 第十二章 Python文件操作
    12.1 open()open()函数作用是打开文件,返回一个文件对象。用法格式:open(name[, mode[, buffering[,encoding]]]) -> file objectname 文件名mode 模式,比如以...
    99+
    2023-01-31
    十二章 操作 文件
  • 【python笔记】第十四节 文件操作
    💕💕💕 博主昵称:摆烂阳💕💕💕 🥰博主主页跳转链接 👩‍...
    99+
    2023-09-03
    python 开发语言
  • 第3章 python 函数与文件操作
    函数    定义        1.基本结构        def func_name():            func_code        2.三种形式 无参:应用场景仅仅只是执行一些操作,比如与用户交互,打印 有参:需要根据外部...
    99+
    2023-01-31
    函数 操作 文件
  • python 第一次作业
    1.使用turtle换一个五环 2.设计这样一个程序:输入一个数字 判断它是不是一个质数 使用turtle换一个五环: >>> import turtle          #导入模块 >>> turtle.width(10)      ...
    99+
    2023-09-28
    python 开发语言
  • 第15课 python 项目实操3
    到了今日,你已经基本懂得 python 是什么了,装逼要专业的,就class ,def 定义类,定义函数去封装 一下要做的内容;,然后需要调用的时候,进行调用,这时候 代码又条例,看起来方便易懂,也是在日后编码的时候需要注意的,要习惯用类,...
    99+
    2023-01-31
    项目 python
  • Python第一次作业练习
    题目分析:"""参考学校的相关规定。对于四分制,百分制中的90分及以上可视为绩点中的4分,80 分及以上为3分,70 分以上为2分,60 分以上为1分;五分制中的5分为四分制中的4分,4分为3分,3分为2分,2分为1分。要求: ...
    99+
    2023-09-21
    python 开发语言
  • python 文件操作
    python基本的文件操作,包括 open,read,write对文件操作流程:1.打开文件,得到文件句柄并赋值给一个变量2.通过句柄对文件进行操作3.关闭文件 新建一个txt文件,内容是《Yesterday When I Was...
    99+
    2023-01-30
    操作 文件 python
  • python文件操作
    1. 文件操作 open 打开 f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes 打开一个文件的时候获取到的是一个文件句柄. ...
    99+
    2023-01-30
    操作 文件 python
  • 【Python】文件操作
    一、文件的编码 思考:计算机只能识别:0和1,那么我们丰富的文本文件是如何被计算机识别,并存储在硬盘中呢 答案:使用编码技术( 密码本)将内容翻译成0和1存入 编码技术即:翻译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译回...
    99+
    2023-10-21
    python
  • python-文件操作
    文件操作 1.  读 / 写 操作 读取: r (read):只能读不能写,文件不存在就报错 ​#打开文件:    object = open('某txt文件',mode = 'r',encoding = '编码')​#读取文件所有内...
    99+
    2023-01-31
    操作 文件 python
  • python---文件操作
    一、对文件操作流程1.打开文件,得到文件句柄并赋值给一个变量2.通过文件句柄对文件进行操作3.关闭文件二、文件打开模式f = open("file_test","r",encoding = "utf-8")    #打开文件,“读模式”,只...
    99+
    2023-01-31
    操作 文件 python
  • Python--文件操作
    文件处理流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件  r模式,默认模式,文件不存在则报错 w模式,文件不存在则创建,文件存在则覆盖 a模式,文件不存在则创建,文件存在则不会覆盖,写内容会以...
    99+
    2023-01-30
    操作 文件 Python
  • python 操作文件
     python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。 操作前需要 import os; 返回当前目录,不包括文件名: os.getcwd(); 返回指定目录下的所有文件和目录名:os.listdir("...
    99+
    2023-01-31
    操作 文件 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(140行):第一次作业_中
    项目需要简单总结有以下几点: 用户登录操作,命令行输入用户名和密码,判断是否有该账户; 登录状态下,可选择生成题目的数量或者切换年级; 根据用户对应的小学、初中、高中三个年级生成不同难度的算术题; 文件输出打印 根据以...
    99+
    2023-01-30
    作业 Python
  • python第三次作业——叶耀宗
    作业1import random#引入随机数模块xing=["小白","小黄","小王","小陈","小绿"]print("学号\t\t\t姓名\t\tJava\tC语言\tPython\t平均成绩\t")listj=[]listc=[]...
    99+
    2023-01-31
    作业 python 叶耀宗
  • python操作Xml文件
    一、简单介绍Xml是实现不同语言或程序进行数据交换的协议,跟json差不多,但是xml远远先于json出现,例如在很多传统的金融行业的很多系统接口还主要是xml格式。Xml的格式如下:<Settings modified="2016-...
    99+
    2023-01-31
    操作 文件 python
  • python 文件操作2
    继续讲解文件操作的其他内置方法读取文件句柄的指针指针,就是说,程序读取文件到哪一行了。f = open("Yesterday.txt",'r',encoding="utf-8...
    99+
    2023-01-30
    操作 文件 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作