文件是一个存储在副主存储器的数据序列,可包含任何数据内容。

概念上,文件是数据的集合和抽象,类似的,函数是程序的集合和抽象。

用文件形式组织和表达数据更有效也更加灵活。

文件包括两种形式,文本文件和二进制文件。

文本文件:一般由单一特定的编码的字符组成

二进制文件:一般由0和比特1组成,没有统一的字符编码。

无论是通过文本还是二进制创建的文件,都可以用两种方式来打开。

我们来举个例子对比文本文件和二进制文件,

首先我们在桌面创建一个文本文件,取名example,并写入“我爱我的祖国”

如下所示:

注意:右下角的编码方式为“UTF-8”

然后执行代码:

fp=open("example.txt","rt",encoding='UTF-8')print(fp.readline())

fp.close()

fps=open("example.txt","rb")print(fps.readline())

fps.close()

在这段代码中,分别使用文本文件形式和二进制形式打开文档,然后读取、关闭。

注:rt为文本文件形式、rb为二进制文件形式。

运行结果如下所示:

接下来,我们正式学习文件相关操作。

1.文件的打开和关闭

说到文件的打开关闭,不由得让我想起以前的笑话,把大象装进冰箱需要几步?

文件操作和这个笑话一样,首先打开文件、然后进行操作、最后关闭文件。

文件的打开:

文件默认处于存储状态,只有将其打开当前程序才有权操作这个文件。

打开不存在的文件,程序将会创造一个新文件来进行操作。

打开这个文件之后,文件处于被占用状态,另一个进程不得对文件进行操作。

文件打开需要使用open()函数,格式如下:

=open(,)

encoding为编码方式

文件打开模式:

“r”    :只读模式,文件不存在返回异常

“w”   :覆盖模式,文件不存在则创建、文件存在则完全覆盖

“x“    :创建写模式,文件不存在则创建、存在则返回异常

”a”    :追加写模式,文件不存在则创建、文件存在则在稳健最后追加内容

“b”    :二进制模式

“f”     :文本文件模式(默认值)

“+”    :与 r\w\x\a一同使用,在原基础上加入了同时读写功能

打开模式可以为字符串形式,其中r,w,x,a可以和b,t,+组合使用

如刚刚例子的打开方式:rt,rb

encoding为编码方式

文件的关闭:

文件使用之后,要采用close()函数关闭文件,释放文件的使用授权

使用方法如下:

.close()

2.文件的读取

文件打开之后,根据打开方式的不同可以对文件进行对应读写操作。(记得注意编码方式)

文件的读取方法如下:

.read(size=-1)

从文件读入整个文件内容,给出参数则读取前size长度的字符串

.readline(size=-1)

从文件中读入一行内容,如果给出参数则读取每行前size长度的字符串

.readlines(hint=-1)

从文件中读入整个文件的内容,以每一行为一个列表,如果给参入,只读取前hint行

举个例子,还是刚刚的example文件,我们多输入两行同样的文件,逐行读出。

先打开文件,然后for循环,通过readlines()逐行读取、最后关闭。

代码如下:

fp=open("example.txt","rt",encoding='UTF-8')for line infp.readlines():print(line)

fp.close()

运行结果如下:

3.文件的写入

写入的常见函数有三个

.write(s)

向文件写入一个字符串

.writelines(lines)

讲一个元素全为字符串的列表写入文件

.seek(offset)

改变当前文件操作指针的位置,offset的值“0”为文件开头、“1”当前位置,“2”文件结尾

举个例子,向文件写入一个列表类型[“中国”、“美国”、“法国”]

代码如下:

fp=open("example.txt","w+",encoding='UTF-8')

lst=["中国","美国","法国"]

fp.writelines(lst)

fp.close()

结果如下:

至此便是python文件方面的常见操作

python文件和数据的格式化_Python文件和数据格式化(教程)相关推荐

  1. Python基础_第5章_Python中的数据序列

    Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...

  2. python open方法下file模块_python 文件操作

    一.基本概述 基本的文件操作也就常见的几种,创建.打开.读取.写入和关闭文件等.Python中有几个内置模块和方法来处理文件.这些方法在例如os,os.path,shutil和pathlib等等几个模 ...

  3. python文件读取下一个字符_python文件的读写总结

    读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...

  4. python以写模式打开的文件无法进读操作_Python文件操作:文件的打开关闭读取写入...

    Python文件操作:文件的打开关闭读取写入 一.文件的打开关闭 Python能以文本和二进制两种方式处理文件,本文主要讨论在Python3中文本文件的操作. 文件操作都分为以下几个步骤: 1.打开文 ...

  5. 下列不是python对文件的操作方法的是_Python 文件操作

    文件操作三部曲:打开 -> 操作 -> 关闭. 一. 文件操作, 常用的几种模式: 如果打开文件,没有指定操作方式,默认是读取: 对于r/r+,如果文件不存在会报错,使用时需要保证文件存在 ...

  6. python中file是什么意思_python文件file

    # 1.编写一个程序,接收用户输入的内容,并且保存为新的文件,如果用户输入:w,表示文件保存退出 with open(r'/Users/liucheng/Desktop/input2.txt', 'w ...

  7. python中filepath路径怎么写_python文件路径操作方法总结

    在python中,文件使用十分频繁,本文将向大家介绍python文件路径的操作:得到指定文件路径.得到当前文件名.判断文件路径是否存在.获得指定文件夹下所有文件.获得文件后缀.拼接路径和文件名. 1. ...

  8. 属于python文件的操作有哪些_python文件操作

    1. 文件操作 open 打开 f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes 打开一个文件 ...

  9. pom.xml文件第一行报错_Python文件读写指南

    作者:豌豆花下猫,某985高校毕业生, 兼具极客思维与人文情怀 .公众号[Python猫], 专注python技术.数据科学和深度学习,力图创造一个有趣又有用的学习分享平台. 对于初学者来说,一份详尽 ...

最新文章

  1. 和ts一般怎么玩_KPL:一诺采访引热议,quot;裴擒虎是个野王都会quot;,暖阳怎么办?...
  2. 建议收藏 | 全面解析 50+条 SQL 语句性能优化策略
  3. 【转来警醒自己】最近的一些面试感悟
  4. 将ubuntu配置为路由器_“名酒为王”时代来临但资源将尽,看泸州老窖如何进行“名酒资源再配置”丨深度观察...
  5. gradle安装与配置_gradle相关安装
  6. python 窗口函数_太好用了!Python中8种流行的SQL窗口函数了解一下!
  7. python中set函数_python中set()函数简介及实例解析
  8. 网安入门须知:Python基础导读
  9. Hashmasks将其艺术品与IPFS固定激励一起存储至Arweave中
  10. vs2013 也能重构(refactor )变量名了
  11. 音频录制和Speech语音识别(ios10)
  12. struts2中的addActionError addFieldError addActionMessage的方法
  13. 现在大火的Web3是什么 web1 web2
  14. J2EE与中间件技术
  15. python爬app视频_用Python爬抖音APP短视频
  16. 二十一日——美国寻梦
  17. 在《寒门状元之死》上,咪蒙贩卖的是什么?
  18. 【云周刊】第125期:高考恢复40年!你们要的大数据解读来啦
  19. EOF while reading packet
  20. 倒计时1天丨相信边缘的力量!

热门文章

  1. tensorflow 提示没有models库
  2. ubuntu下vim与系统剪切板互相拷贝
  3. 关于Silverlight IsolatedStorage 不能Serialze Parameter[]
  4. IOT物联网观察之物联网建设为什么是供给侧改革的重要途径?
  5. 智能媒体管理(IMM) Python SDK DEMO
  6. Cartographer源码阅读(4):Node和MapBuilder对象2
  7. 深度学习大神Hinton推翻自己30年的学术成果另造新世界
  8. 毅航产品—模拟载板I
  9. 【小程序开发】微信小程序开发中遇到的那些坑...
  10. 山石网科-Hillstone-SC-***(SSL-***)之配置终结篇