当前位置: 首页 > news >正文

python——文件存储与写入path

path方法常常用来访问一个文件所在的地址,然后将地址储存在变量中。然后有不同的方法将文件内容进行处理,还可以将文件进行创建。

from pathlib import Path
path=Path('xxxxxxx')

1.文件读取操作

(1)txt文件

常用read_text()读取文件内容,

from pathlib import Path
path=Path('xxxxxx')
contexts=path.read_text()

读取内容后使用splitlines()方法获取文件的各行,返回的是一个包含文件各行的列表

from pathlib import Path
path=Path('xxxxxx')#txt文件存储位置
contexts=path.read_text()
lines=contexts.splitlines()

(2)json文件 

对于文件后缀为json文件(可以理解成加密的txt文件),读取时候我们Path进行文件地址访问,然后使用read_text()进行文件内容获取,然后将文件内容使用json.load()函数进行解析加载到内存中,方便我们访问内容(相当于文件解密),这样python就可以访问内容了。

from pathlib import Path
import json
path=Path('xxxxxx')#是json文件存储地址
contexts=path.read_text()
contents=json.load(contexts)

(3)csv文件 

对于一种特殊文件格式csv,文件阅读较为困难,使用机器进行阅读较为方便。因此,需要我们进行导入文件内容。文件打开同样使用Path方法,read_text()将文件读取,然后使用csv.reader()解析文件的各行,返回的各行的列表,对列表调用函数next()获取文件的下一行(相当于将列表文件从头开始进行按顺序检索)。

from pathlib import Path
import csv
path=Path('xxxxxx')#csv文件存储位置
contexts=path.read_text()
reader=csv.reader(contexts)
print(next(reader))

csv有种特殊的形式将每一行内容头打印出来,并加上索引。使用函数enumerate()处理将返回一个字典,索引和每一行的头。

from pathlib import Path
import csv
path=Path('xxxxxx')#csv文件存储位置
contexts=path.read_text()
reader=csv.reader(contexts)
for key,value in enumerate(reader):print(key,value)

2.文件的存储

文件的写入同文件的读取,都是在Path进行的,不同的是文件的读取需要提供文件位置,如果文件不存在,就会将文件创建一个新的;如果文件是有内容的话就会在写入时候覆盖文件。

(1)txt文件的写入

txt文件的写入时使用write_text()方法,对文件进行写入操作。写入内容默认只能是字符串,如果要写入数字要进行str()函数进行转换,才能进行写入。

from pathlib import Path
path=Path('xxxxxxx')
contents="xxxxxxxx"#要写入的内容
path.write_text(contents)
from pathlib import Path
path=Path('xxxxxxx')
contents=1#要写入的内容
contents=str(contents)
path.write_text(contents)

(2)json文件的写入

json文件将文件写入使用同样用write_text()进行写入,json文件的写入,需要使用json.dump()函数进行格式转换(相当于进行文件进行加密),然后才能写入文件中。同样的,文件的写入只能写入字符串类型。但是文件格式转换的时候会返回字符串类型,没有必要将str()函数进行转换。

from pathlib import Path
path=Path('xxxxx')#json文件的地址
number=[1,2,3,4,5,6]
contents=json.dump(number)#进行文件格式转换
path.write_text(contents)

3.文件位置

文件位置分为相对文件路径和绝对文件路径。相对文件路径就是将当前代码所在文件的路径的相对位置;绝对路径是指出文件的位置,不管程序位置,直接在计算机中进行查找。

(1)相对文件路径

相对文件路径,使计算机在查找位置时候将程序所在位置文件夹进行接着进行查找,就会报错:FileNotFoundError。例如路径:"txt_file/txt1.txt",程序所在文件夹是与txt_file同一个,计算机会根据路径进行查找。使用相对路径可以很好解决不同设备适配和转移问题。

(2)绝对文件路径

绝对文件路径可以很好解决文件与程序位置不同的情况。绝对路径,直接指出文件在以根目录出发进行查找,例如路径:"E:/code2024/pythoncode/txt_file/txt1.txt",这样文件更简单,更粗暴。在移植到不同的设备,就会增加麻烦。

最后值得注意的是文件的路径是使用正斜杠进行分割,与通常计算机使用反斜杠不同,程序会在不同平台进行移植时候,程序会将文件路径自动适配不同平台的类型,保证能够正确识别。

http://www.lryc.cn/news/470808.html

相关文章:

  • AI 提示词(Prompt)入门 :ChatGPT 4.0 高级功能指南
  • C++:模板
  • 假如浙江与福建合并为“浙福省”
  • AI图片生成3D物体和2D视频提取3D动画
  • Android 应用包名的定义 pm list packages查询的包名
  • 递归相关练习
  • 租房市场新动力:基于Spring Boot的管理系统
  • 基于Python的B站视频数据分析与可视化
  • 远程:HTTP基本身份验证失败。提供的密码或令牌不正确,或者您的账户启用了两步验证,您必须使用个人访问令牌而不是密码。
  • 聚合值和非聚合值比较【SQL】
  • Python 学习 DAY1
  • `Pendulum`: 掌握时间的艺术,让Python日期时间操作不再复杂
  • nginx------HTTP模块配置详解
  • 听见文本的魅力:AI 与未来的语音交互
  • Qt 窗口可见性 之 close函数和hide函数
  • git bisect和git blame
  • 【面试题】Node.JS篇
  • Leetcode11:盛水最多的容器
  • php如何对海量数据进行基数统计
  • git命令报错:fatal: not a git repository (or any of the parent directories): .git
  • 如何通过sip信令以及抓包文件分析媒体发到哪个地方
  • 【网络安全零基础入门】一文搞懂Javascript实现Post请求、Ajax请求、输出数据到页面、实现前进后退、文件上传
  • NVR管理平台EasyNVR多个NVR同时管理综合应用方案
  • SpringBoot核心框架之AOP详解
  • Linux: network: ifconfig已经过时,建议使用ip addr相关命令
  • Flutter 鸿蒙next中的路由使用详解【基础使用】
  • 基于SSM+小程序民宿短租管理系统(民宿1)
  • SQL LIKE 操作符
  • 七款主流图纸加密软件强力推荐|2024年CAD图纸加密保护指南
  • 【STM32】单片机ADC原理详解及应用编程