python文件操作(一看就懂)

article/2025/10/11 23:29:01

python文件操作

    • 历史遗留问题
    • 文件介绍
    • 打开文件
    • 转定义字符
      • Python格式化字符串的替代符以及含义
      • Python的转义字符及其含义
    • 💕Final~

历史遗留问题

现在我们接着上文讲,如果没有看过我上篇文章的萌新朋友们可以先去看看,不然一会儿容易读的你满脸问号。python字符编码

在这里插入图片描述

现在我们来思考一个问题,我们在PyCharm里敲字符,这个字符应当先存到内存中去,而内存里都存的是unicode格式的二进制,如果我们现在就把他存到硬盘里,理论上来说就可以把unicode格式的二进制直接存到硬盘里就行了,如果是这样的话世界上就不会有乱码的问题了,但是内存的数据一旦断电就马上丢失了,而硬盘的数据是会永久保存的,这些硬盘里保存的有。

整个人类历史的长河中留下了数量非常之庞大的老文件,在这些文件里有很多都是用GBK编码、ASCII编码、Shift_JIS、Euc-kr等等的。对于这些老文件咱们肯定不能全删掉,如果能全部删掉我们也不会遇到乱码的问题了,因为所有文件都是unicode编码,所以我们做不到秦始皇那样,所以我们经常遇到乱码问题也是正常的,其原因就是残留了太多的各种的文件。

现在我们电脑内存里的编码方法都被替换成unicode了,所以我们现在在程序的过程中输入任何人类所用的字符都不会乱码,但是在电脑上的老文件也是需要正常显示的,所以unicode编码除了需要兼容玩过字符以外还需要与原来每个国家的字符编码有对应关系,把新的unicode的二进制数与老的编码表的二进制数一一对应起来,就相当于unicode需要充当一个第三方中介。

我们在文件中存下的数据在内存中存的是unicode的二进制数,然后当我们要保存到硬盘的时候我们要将文件保存成GBK格式,然后就会按照unicode对应上GBK的二进制编码进行保存。当我们要读取GBK格式的文件的时候也是照着以上步骤反过来,先看这个文件是以什么编码格式保存的,然后对应成unicode编码的二进制数,再根据unicode编码显示出来原来的字符。

如果我们在文件里输入韩文字符在内存里显示是没有问题的,当我们将它写入硬盘的时候我们给它保存成GBK格式的文件就会有问题,因为GBK根本就没有对应韩文字符,所以有的平台改写昵称是不允许使用除中文、指定符号、英文外的任何字符。如果我想将硬盘里存的GBK格式的文件转化成Euc-kr格式,由于GBK编码里面转成了英文和中文,Euc-kr编码里面又编定了英文和韩文,而unicode里面是包括所有国家的字符的,所以当我们把GBK格式的文件通过unicode转成Euc-kr的时候,英文也是可以正常显示的,但如果是中文的话就会乱码,这是因为Euc-kr里面没有中文的对应关系,所以说以前的老字符编码都是可以转成unicode的,但是它们不能通过unicode进行相互转换。

文件介绍

上面我们费了这么多的篇幅来讲字符编码,最终你只需要记住一个结论就行了:遇见乱码就加文件头,用python3加文件头直接加,用python2加文件头前面先加一个小写u。

到底什么是文件呢?我们常说计算机有三层体系结构:最下层是硬件,硬件之上就是操作系统,最上层就是用户和应用程序。

用户和应用程序如果想操作硬件就必须通过操作系统,比如用户或者应用程序想要操作硬盘这个硬件就得操作操作系统,而操作系统提供了一种虚拟的概念,那就是文件,或者叫做操作系统提供的操作硬盘功能。用户或者应用程序想要把数据存到硬盘里去就需要对操作系统的文件发起系统调用,操作系统会把用户或者应用程序对文件的调用功能转成具体的硬盘操作,比如磁盘怎么转、磁头臂怎么摆,然后再把数据写到硬盘我们平时修改的文件都是借助文本编译器来实现修改文件的。

我们平时修改文件,都是借助文本编译工具来实现修改文件的,比如Visual Studio Code、Visual Studio、PyCharm、Word等等。当然,图片和视频也可以修改,图片对应的工具就是PS,图片数据就是16进制的,PS内所有的工具、画笔都是对颜色的修改,只不过是经过封装的而已。

打开文件

如果用代码来操作文件python就为我们提供了一个名为 open() 的功能,这个open功能就是用来打开操作系统文件的,然后去用操作系统的文件去对应具体的硬盘空间,所以以后我们用open功能打开一个文件,然后对文件进行操作,其实open就是通过操作这个文件然后转换成具体的硬盘操作。

在讲open之前open功能有两大类模式我们需要掌握。

第一大类的模式就是控制文件读写操作的模式,在这类模式当中r模式就是控制只读模式,w控制只写模式,a是只追加写模式。a和a都是只写模式,其区别就在于w模式下如果一个文件里原本有数据,w模式就会将其清空后再写;a模式则会在原有的数据后追加写,不清空原有数据。还有一个模式就是+模式,这个+不能够单独使用,他必须和r、w、a配合使用,也就是r+、w+、a+,+号会在他们原有的基础上给你增加一个你原来没有的功能,r+就是在只读的基础上增加了写的功能;w+功能就是原来只能写,有了加号以后就可以读了;a+就是除了原来的追加写以外也可以读了。虽然上述的三种模式都是可读可写,但是在他们原有的基础上增加的功能,所以受限于它原有的功能,受限在哪里我们后面再具体说。

第二类模式就是控制控制文件读写内容的模式,这个模式控制的是你读文件的时候读的是什么格式的数据、写文件又是写的什么格式的数据,如果读写的是文本格式的数据就是t模式,t模式是默认的模式,如果我们不指定这个模式他就会默认为t模式。

t模式是以字符串为单位的,说到这里我们来思考一下:我们为什么要学文件处理?学习文件处理的目的其实就是把原本存放于内存的数据保存到硬盘里面去。如果内存里现在存的是一堆unicode数据存到硬盘,就是要把unicode数据encode一下才能存,不管是编码成utf-8,还是编码成gbk都是要编码一下,总之不能把unicode存到硬盘,因为unicode只存于内存,所以才要encode一下。

刚刚我们说的t模式的读写都是以字符串为单位的,而python3的字符串类型在内存里都是unicode格式的。我们要把字符串存到硬盘就应该把字符串编码一下才能存到硬盘,所以以后我们遇到字符串类型直接把它想象成unicode就行了。

转定义字符

用python操作文件的第一步就是打开文件,第二步就是具体操作文件(包括读写文件),最后一步就是关闭文件。

打开文件的方法就是在open()功能中传一个参数再给它指定我们要打开的文件的路径,示例代码如下:

file = open(r'C:\trees\app.txt')

当我们将以上代码放到PyCharm中后大家就会发现字符串中的\t\a和其他的字符的颜色有些不同,那是因为在python的字符串中这个斜杠是具有转义的作用的,例如\n就是换行符、\t是制表符、\a具有响铃的作用。

在这里插入图片描述

比如说我们运行以下代码电脑就会出现响铃:

print('/a')

除了以上的转义符之外还有许多别的转义符,我们下面列出了两个表格为大家介绍:

Python格式化字符串的替代符以及含义

在这里插入图片描述

Python的转义字符及其含义

在这里插入图片描述

💕Final~

以上就是这篇文章的全部内容了,希望本文《python文件操作》的内容对大家的学习或者工作具有一定的参考学习价值,bye~


http://chatgpt.dhexx.cn/article/HRE7jpYe.shtml

相关文章

Linux的文件操作命令

接下来将介绍Linux中一些常用的文件操作命令,今天先演示五个类型的命令操作,内容不是特别的全,找的几个典型的常用的演示,想要全面的可以另找资料了解一下,推荐大家跟着敲跟着做才能加深记忆,祝大家学的开心…

Linux —— 文件操作

目录 1.内核提供的文件系统调用 1.1open和close 1.2标记位 1.3write和read 2.文件描述 2.1文件描述符 2.2文件描述符分配规则 3.重定向 3.1最“挫”的重定向 3.2使用系统调用 3.3重定向原理 3.4让我们的"shell"支持重定向操作 4.一切皆文件 5.缓冲区 5…

文件操作详解

1.文件的概念 文件的基本概念   所谓“文件”是指一组相关数据的有序集合。 这个数据集有一个名称,叫做文件名。实际上在前面的各章中我们已经多次使用了文件,例如源程序文件、目标文件、可执行文件、库文件 (头文件)等。文件通常是驻留在外部介质(如磁…

文件操作(C语言)

目录 一、前言 二、文件的打开和关闭 三、文件的读写 1.文件的顺序读写 2.文件的随机读写 四、文件结束的判定 一、前言 当我们向写好的通讯录程序中输入信息时,有时我们希望能保存输入的信息,不用每次打开这个程序都要重新输入,这时就…

文件操作详解(超级详细)

正常我们的程序在执行的时候程序结束后,会将所有数据清楚,那么我们应该如何保存数据呢?这里我们就需要用文件操作。 一、文件的打开和关闭 1.文件打开、关闭函数—fopen、fclose //打开文件 FILE * pf fopen ( const char * filename, const…

虚拟机安装黑苹果【虚拟机安装,黑苹果安装,黑苹果无法全屏问题】(这应该全网最全的资源了吧~)

一,资源下载 链接:https://pan.baidu.com/s/1cyGiDvkJinx8dnB57gO7UQ 提取码:i615 PS:里面有虚拟机资源,Drawin.ios文件和苹果镜像文件 这里只讲如何用虚拟机安装黑苹果,不讲如何安装虚拟机,下…

VMware虚拟机安装黑苹果10.15 || AMD R7 5800处理器

VMwar版本:16Pro 链接:https://pan.baidu.com/s/1qGHEynWSV4YS9WSNonxiuA?pwdazvh 提取码:azvh macOS链接,版本为Catalina 10.5。这个版本后,os安装包就过10G了,会特别卡。 链接:https://pan…

VMware16安装macOS10.15.1 - 黑苹果 - osx虚拟机

效果图 步骤 下载安装VMware,并且利用unlocker开启macos的支持VMware利用unlocker开启MacOS支持_Rudon滨海渔村的博客-CSDN博客效果步骤下载安装vmware16http://www.winwin7.com/soft/17946.html下载unlocker3.0 (这里包括了darwin.iso和darwinPre15.is…

vm虚拟机15.5安装黑苹果maxos-10.14

鼎峰_小配针对vm虚拟机安装黑苹果maxos在学习和研究探索的过程中的一点点心得,从刚接触时的一脸懵逼,到后来慢慢的了解了,废话不多说,直接上干货。 一、需要准备的软件: a)解锁虚拟机MAC补丁:Unlocker 3.0…

图文详解如何在VMware Workstation11虚拟机上安装黑苹果Mac OS X 10.10系统

想要体验黑苹果系统当然要借助于VMware虚拟机了,那么下面大家就来看看亦是美网络小编的图文详解如何在VMware Workstation11虚拟机上安装黑苹果Mac OS X 10.10系统的教程吧! 小编的安装环境: 实体机windows8.1专业版 VMware workstation 1…

win10上的VMware安装黑Mac(黑苹果、AMD)

使用AMD处理器的笔记本,在虚拟机上安装MAC操作系统。 本机安装配置: 华硕天选 AMD Ryzen 4800H 24G运存 Mac OS 10.13 High Sierra 1. 下载所需资源 所需资源下载链接: mac os 10.13镜像,其他工具 链接: https://pan.baidu.com/s/…

VMware虚拟机安装macOS黑苹果教程,亲测流程,全过程问题解决方案记录

先介绍流程,安装过程中遇到的问题都在最后列出并写出解决方案,找解决方案的直接到最后 准备: 1.VMware虚拟机 我的比较老,为VMware Workstation 14 Pro 14.1.3 build-9474260 2.unlocker 解锁VM的macOS系统 3.macOS的小白版cdr安装包(推荐)或者macOS的dmg安装包 4.如果…

Windows下VMmare黑苹果macOS Catalina 10.15虚拟机安装VMware tools工具

请先安装好macOS Catalina 10.15虚拟机。 VMware 10.15.5安装macOS Catalina 10.15请参考我的博客 Windows下VMware Workstations Pro15.5.0安装macOS Catalina 10.15虚拟机(详细教程) 如果VMware安装的虚拟机不安装VMware tools工具将无法全屏、进行虚…

Windows 10虚拟机Vmware 安装 黑苹果macos10.14

工具链接 提取码:zko1 VMware16.2.3安装 VMware16.2.3 连接手机有问题,改用 VMware15.5.6-16341506 流程: 虚拟机 MacOS系统解锁创建虚拟机安装macOS安装VMware tools 虚拟机 MacOS系统解锁 使用工具:Unlocker.7z 停止VM服务:停止所有VMwa…

黑苹果从入门到精通:最详细的VMware安装macOS教程

前言 不知为何,以前我发的两篇关于黑苹果的文章或没过审或被删除,最近SMZDM上有不少优质的黑苹果文章发出来,貌似禁令已开,前段时间在一篇写的很不错的黑果文章下吹牛说今年要写一个系列,故有了这篇文章作为系列的开头…

VMware虚拟机安装黑苹果MacOS Mojave系统详细教程

更多资源请百度搜索:前端资源网 欢迎关注我的博客:www.w3h5.com 大家好,我的主要更新渠道是自己搭建的博客,为了节省流量,我开了防盗链。。。所以其他平台可能会有图片不能显示的问题,请转至我的博客进行查…

给windows装个Mac黑苹果虚拟机

点击上方↑↑↑蓝字[协议分析与还原]关注我们 “ windows下安装使用苹果Mac虚拟机。” 平常的生活工作中,我大部分时候使用Windows,偶尔用用Mac。实在是用不惯Mac,但有的时候,有些工作还是需要在Mac上搞,不得不用&…

分享Win10虚拟机VMware安装黑苹果MacOS Sierra图文教程

虚拟机VMware安装黑苹果MacOS详细图文教程,安装也比较简单亿破姐这里使用的但是过程挺复杂了。 准备工作 (1)虚拟机 VMware Workstation Pro (2)解锁虚拟机MAC补丁 Unlocker (3)苹果系统懒人…

使用VmWare安装黑苹果系统

目录 1.介绍2.破解安装VMware3.unlocker解锁虚拟机3.1 关闭VMware相关的进程3.2 执行安装命令 4.VmWare创建虚拟机5. 下载并配置镜像以及虚拟机设置5.1 修改镜像5.2 修改虚拟机安装路径文件内容 6. 选择镜像启动虚拟机7.安装macOS系统7.1 开启此虚拟机7.2 选择语言->简体中文…

VMware虚拟机安装黑苹果步骤与常见问题,VMware16,MacOS12.01(Moterey)

资源准备: 链接:https://pan.baidu.com/s/1JFtpMVrULiky9l3SvCXX-w 提取码:c452 说明: 1.镜像版本10.14和12.01根据需要选择其一即可,10.14的后缀为cdr,12.01的后缀为ISO,这两种文件VMware都支…