0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Python-文件操作

汽车电子技术 来源:程序猿知秋 作者:程序猿知秋 2023-02-16 15:42 次阅读

文件的基本操作

概念

  • 在计算机中,文件是以 二进制 的方式保存在磁盘上的
  • 文本文件 二进制文件
    • 文本文件(用记事本打开能直接能看懂的)
      • 可以使用 文本编辑软件查看
      • 本质上还是二进制的,比如 Python的源码文件
    • 二进制文件(用记事本打开看不懂的)
      • 保存的内容无法直接阅读,而是 提供给其他软件使用
      • 比如:图片、音频视频 文件等
  • 文件操作的三个步骤
    • 打开文件
    • 读、写文件
      • 读:将文件读入内存
      • 写:将内存中的数据写入文件
    • 关闭文件

操作文件的函数/方法

  • open 函数负责打开文件,并且返回文件对象

    • 如果文件存在,返回文件操作对象
    • 如果文件不存在,会抛出异常
  • **read、write、close 需要文件对象来操作

    **

函数 说明
open 打开文件,并且返回文件操作对象
read 将文件内容读取到内存
write 将内存中的数据写入文件
close 关闭文件

示例

  • 新建一个 aa.txt 文件,内容如下

    图片

  • 读取代码如下

# 打开文件
file=open("aa.txt")


# 读取文件
content=file.read()
print(content)


# 关闭文件,如果忘记关闭,会造系统资源消耗,影响后续访问
file.close()

注: 打开文件后,当操作完成后,一定要注意关闭,不然会造成资源消耗,影响后续对文件的访问

输出结果

图片

文件的打开方式

open 函数默认以 只读方式 打开文件,并返回文件对象

语法

file=open("文件名","访问方式")
访问方式 说明
r 以只读方式打开文件,文件的指针会放在文件的开头。这是默认模式
w 以只写方式打开文件,如果文件存在会被覆盖,不存在则会创建文件
a 以追加方式打开文件。如果文件存在,文件指针会在结尾,后续以追加内容的方式进行。如果文件不存在,则创建新文件进行写入
r+ 以读写方式打开文件,文件指针在开头。如果文件不存在,抛异常
w+ 以读写方式打开文件。如果文件存在会被覆盖。如果不存在,创建新文件
a+ 以读写方式打开文件。如果文件存在则指针在文件结尾。如果不存在则创建新文件

**示例

**

# 写入文件
file=open("bb.txt","w")
# 写入内容
file.write("aaaaaaaa")
# 关闭文件
file.close()


# 追加内容
file=open("bb.txt","a")
file.write("ccccccc")
file.close()

输出结果

图片

**按行读取内容

**

  • readling 方法可以一次读取一行内容
  • 方法执行后,会把** 文件指针 **移动到下一行

with + open() 模式 (推荐使用)

  • 这种模式下文件打开之后不需要写入文件关闭函数 close(),程序会在执行完 with 结构体中的程序后自动关闭打开的文件

示例:文件复制

test_list=[]
# 读取文件数据到内存
with open("aa.txt","r") as f:
    # 读取所有行
    for line in f.readlines():
        test_list.append(line)


# 从内存读取数据,写入到文件
with open("cc.txt","w") as f:
    for line in test_list:
        f.write(line)

文件/目录管理

在Python 中,如果希望对 文件或文件夹进行 创建、重命名、删除、查看 等操作,需要导入 os 模块

**文件操作

**

方法名 说明 示例
rename 重命名文件 os.rename(源文件,目标文件)
remove 删除文件 os.remove(文件名)
mknod

目录操作

方法名 说明 示例
listdir 目录列表 os.listdir(目录名)
mkdir 创建目录 os.mkdir(目录名)
rmdir 删除目录 os.rmdir(目录名)
getcwd 获取当前目录 os.getcwd()
chdir 修改工作目录 os.chdir(目标目录)
path.isdir 判断是否是目录 os.path.isdir(目录路径)

注:对文件或者目录的操作, 都支持 相对路径 与 绝对路径

**示例

**

import os
# 在当前目录下 创建一个 目录 aaa
os.mkdir("aaa")
# 在 aaa 目录下创建两个文件
with open("aaa/aaa.txt","w") as f:
    f.write("hhhhhhhhhhhh")
with open("aaa/bbb.txt","w") as f:
    f.write("ddddddddddddd")


# 获取当前目录
dirpwd = os.getcwd()
print(dirpwd)

文本文件的编码

  • 文本文件存储的内容是基于 字符编码 的文件,常见的编码有 ASCII 编码,UNICODE 编码等
    • Python 3.x 默认使用 UTF-8 编码
  • ASCII编码
    • 计算机中只有 256个 ASCII 字符,一个ASCII在内存中占用 1个字节的空间
  • UTF-8 编码
    • 计算机中使用 1~6 个字节来表示一个 UTF-8 字符,涵盖了地球上几乎所有地区的文字
    • 大多数汉字会用 3个字节表示
    • UTF-8 是 UNICODE 编码的一种编码格式

eval 函数

eval() 函数十分强大,将字符串 当成 有效的表达式 来求值 并返回计算结果

示例

# 解析字符串的 数字相加
print(eval("1+2"))


# 解析 列表
print(eval("[1,3,4,5,5]"))
print(type(eval("[1,3,4,5,5]")))


# 解析 字典
print(eval("{'aaa':1,'bbb':2}"))
print(type(eval("{'aaa':1,'bbb':2}")))

输出结果

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二进制
    +关注

    关注

    2

    文章

    795

    浏览量

    41643
  • 计算机
    +关注

    关注

    19

    文章

    7488

    浏览量

    87849
  • 文件
    +关注

    关注

    1

    文章

    565

    浏览量

    24727
收藏 人收藏

    评论

    相关推荐

    python学习--文件操作

    进入第7天的学习,学到了python文件操作,教程说是和C语言兼容,于是就迫不及待的的想试试。按照教程的输入,直接改成自己的目录f=open('D:\python\text.txt'
    发表于 12-25 16:41

    请问python文件怎么操作

    python文件操作步骤
    发表于 11-16 07:53

    请问python-树莓派如何通过按键控制步进电机正反转?

    步进电机驱动原理是什么?python-树莓派如何通过按键控制步进电机正反转?
    发表于 10-09 08:45

    python-控制khr3hv-master机器人

    python-控制khr3hv机器人,感兴趣的小伙伴们可以瞧一瞧。
    发表于 11-22 15:40 2次下载

    python文件操作实例代码说明

    本文档的主要内容详细介绍的是python文件操作实例代码说明。
    发表于 09-07 18:21 11次下载
    <b class='flag-5'>python</b>的<b class='flag-5'>文件</b><b class='flag-5'>操作</b>实例代码说明

    python文件和目录的操作方法介绍和实例说明

    这篇文章主要介绍了python 文件和目录的操作方法,简明总结了文件和目录操作中常用的模块、方法,并列举了一个综合实例,需要的朋友可以参考下
    发表于 09-16 17:12 5次下载
    <b class='flag-5'>python</b><b class='flag-5'>文件</b>和目录的<b class='flag-5'>操作</b>方法介绍和实例说明

    python文件和目录的操作方法介绍和实例说明

    这篇文章主要介绍了python 文件和目录的操作方法,简明总结了文件和目录操作中常用的模块、方法,并列举了一个综合实例,需要的朋友可以参考下
    发表于 09-16 17:12 0次下载
    <b class='flag-5'>python</b><b class='flag-5'>文件</b>和目录的<b class='flag-5'>操作</b>方法介绍和实例说明

    abaqus-Python实例-操作excel文件下载

    abaqus-Python实例-操作excel文件
    发表于 12-17 16:40 0次下载
    abaqus-<b class='flag-5'>Python</b>实例-<b class='flag-5'>操作</b>excel<b class='flag-5'>文件</b>下载

    Python-基本概念

    python源程序就是一个特殊的文本文件,可以使用任意文本编辑软件做开发
    的头像 发表于 02-16 14:49 651次阅读
    <b class='flag-5'>Python-</b>基本概念

    网络工程师学Python-文件打开

    Python中,可以使用open()内置函数打开文件,以执行一系列文件操作。在本文中,将介绍Python中打开
    的头像 发表于 04-27 09:14 651次阅读

    网络工程师学Python-文件处理

    当涉及到 Python 文件处理时, 我们通常会涉及到文件的读取和写入, 以及文件操作和处理。
    的头像 发表于 04-27 09:21 667次阅读

    网络工程师学Python-文件删除

    Python 文件删除是 Python 开发中常用的一项操作,本文将针对 Python 中的 os 模块提供多个示例,介绍如何删除不同类型的
    的头像 发表于 04-27 09:24 515次阅读

    python文件操作是什么

    一、什么是文件操作 一个完整的程序一般都包括数据的存储和读取;我们在前面写的程序数据都没有进行实际的存储,因此python解释器执行完数据就消失了 实际开发中,我们经常需要从外部存储介质(硬盘、光盘
    的头像 发表于 06-21 17:15 2191次阅读
    <b class='flag-5'>python</b><b class='flag-5'>文件</b><b class='flag-5'>操作</b>是什么

    如何用Python来实现文件系统的操作功能

    近几年随着 Python 的热度不断上涨,人们渐渐使用这门编程语言来进行一些自动化操作,以节省重复劳动带来的效率低下,那么必定会涉及到对 文件系统的操作 ,包括
    的头像 发表于 10-30 14:27 409次阅读
    如何用<b class='flag-5'>Python</b>来实现<b class='flag-5'>文件</b>系统的<b class='flag-5'>操作</b>功能

    如何实现Python复制文件操作

    Python 中有许多“开盖即食”的模块(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在这篇文章中,你将会看到一些用 Python 实现
    的头像 发表于 07-18 14:53 411次阅读