python:编码格式

简介: python:编码格式

编码格式


常见的字符编码格式

  1. Python的解释器使用的是Unicode(内存)
  2. .py文件在磁盘上使用UTF-8存储(外存)

9cfbb490d1a947ddbd3fc07644a9b1b4.png


文件的读写原理

  1. 文件的读写俗称‘IO’操作(input与output)
  2. 文件读写操作流程:

a63857f51f4b40adb272720cd5a2bc5b.png

3、操作原理:

523df1aa992f4d33b0c6d8c3241cd642.png

内置函数open()创建文件对象:

语法规则:

file = open(filename [,mode,encoding])

6bf9afbf1b47433ba05e0bff8630ff90.png


常用的文件打开模式


文件的类型

  1. 按文件中数据的组织形式,文件分为以下两大类
    ①文本文件:存储的是普通“字符”文本,默认Unicode字符集,可以使用记事本程序打开;
    ②二进制文件:把数据内容用“字节”进行存储,无法用记事本打开,必须使用专用的软件打开,举例:MP3音频文件,jpg图片,doc文档等。
打开模式 描述
r 以只读模式打开文件,文件的指针将会放在文件的开头
w 以只写模式打开文件,如果文件不存在则创建,如果文件存在,则覆盖原有内容,文件指针在文件的开头
a 以追加模式打开文件,如果文件不存在则创建,文件指针在文件开头,如果文件存在,则在文件末尾追加内容,文案指针在原文件末尾
b 以二进制方式打开文件,不能单独使用,需要与其他模式一起使用,rb,或者wb
+ 以读写方式打开文件,不能单独使用,需要与其他模式一起使用,a+


文件对象的常用方法

方法名 说明
read([size]) 从文件中读取size个字节或字符的内容返回,若省略[size],则读取到文件末尾,即一次读取文件所有内容
readline() 从文本文件中读取一行内容
readlines() 把文本文件中每一行都作为独立的字符串对象,并将这些对象放入列表返回
write() 将字符串str内容写入文件
writelines(s_list) 将字符串列表s_list写入文件,不添加换行符
seek(offset[,whence])

把文件指针移动到新的位置,offset表示相对于where的位置;offset:为正往结束方向移动,为负往开始方向移动 。--------------------------where不同的值代表不同含义:①0:从文件头开始计算(默认值);②1:从当前位置开始计算;③2:从文件尾开始计算

tell() 返回文件指针的当前位置
flush() 把缓冲区的内容写入文件,但不关闭文件
close() 把缓冲区的内容写入文件,同事关闭文件,释放文件对象相关资源


with语句(上下文管理器)

with语句可以自动管理上下文资源,不论什么原因跳出with块,都能确保文件正确的关闭,以此来达到释放资源的目的

74cd9acba1de4db2b6086c13cc31c5b2.png

# 文件复制案例:
with open('logo.png','rb') as src_file
  with open('copy2logo.png','wb') as target_file
    target_file.write(scr_file.read())

os模块

  1. os模块是python内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统有关,在不同的操作系统上运行,得到的结果可能不一样
  2. os模块与os.path模块用于对目录或文件进行操作
# 调用
import os
os.system('notepad.exe')    #调用记事本
os.system('calc.exe')       #调用计算器
# 直接调用可执行文件
import os
os.startfile('C:\\Program Files\\XMind\\XMind.exe')   # 引号‘’中为文件存放的位置,\变为\\
函数 说明
getcwd() 返回当前的工作目录
listdir(path) 返回指定路径下的文件和目录信息
mkdir(path[,mode]) 创建目录
makedirs(path1/path2……) 创建多级目录
rmdir(path) 删除目录
removedirs(path1/path2……) 删除多级目录
chdir(path) 将path设置为当前工作目录


os.path模块

函数 说明
abspath(path) 用于获取文件或目录的绝对路径
exists(path) 用于判断文件或目录是否存在,如果存在返回TRUE,否则返回FALSE
join(path,name) 将目录与目录或者文件名拼接起来
splitext() 分离文件名和扩展名
basename(path) 从一个目录中提取文件名
dirname(path) 从一个路径中提取文件路径,不包括文件名
isdir(path) 用于判断是否为路径


# 列出指定目录下的所有.py文件
import os
path = os.getcwd()
lst = os.listdir(path)
for filename in lst:
    if filename.endswith('.py'):
        print(filename)


相关文章
|
1月前
|
Python
Python格式
Python格式
26 5
|
2月前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
6月前
|
数据格式 Python
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
442 0
|
4月前
|
Python
python第三方库-字符串编码工具 chardet 的使用(python3经典编程案例)
这篇文章介绍了如何使用Python的第三方库chardet来检测字符串的编码类型,包括ASCII、GBK、UTF-8和日文编码的检测示例。
179 6
|
4月前
|
Python
Python 中如何指定 open 编码为ANSI
Python 中如何指定 open 编码为ANSI
74 1
|
3月前
|
PyTorch 算法框架/工具 数据格式
Python实用记录(八):不同格式之间的转换
本文介绍了Python中不同数据格式之间的转换方法,包括numpy数组与列表、字符串之间的转换,以及PyTorch张量与numpy数组之间的转换。
17 0
|
5月前
|
Linux Python Windows
Python PDF文件转Word格式,只需要3秒(附打包)
Python PDF文件转Word格式,只需要3秒(附打包)
110 3
Python PDF文件转Word格式,只需要3秒(附打包)
|
4月前
|
Python
7-21|Python加载plist格式文件
7-21|Python加载plist格式文件
|
4月前
|
JSON 数据格式 Python
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
|
5月前
|
数据采集 开发工具 Python
海康威视工业相机SDK+Python+PyQt开发数据采集系统(支持软件触发、编码器触发)
该系统基于海康威视工业相机SDK,使用Python与PyQt开发,支持Gige与USB相机设备的搜索及双相机同时显示。系统提供软件触发与编码器触发模式,并可在数据采集过程中实时保存图像。此外,用户可以调节曝光时间和增益,并进行信息输入,这些信息将被保存至配置文件以便下次自动加载。参数调节与实时预览等功能进一步增强了系统的实用性。
345 1