浅谈Open.Json.pickle.Os

一、Open函数使用

open函数是 Python 中用于打开文件的内置函数,它返回一个文件对象,该文件对象提供了对文件进行读写操作的方法。使用 open 函数时,通常需要指定至少两个参数:文件名(file)和模式(mode)。模式决定了文件是以只读、只写、追加、读写等哪种方式被打开的。

file_object = open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

file:必需,文件路径(相对或绝对路径)。

mode:可选,文件打开模式。默认为 'r',即只读模式。其他常用模式包括 'w'(只写,文件存在则覆盖)、'a'(追加,写入的数据会被追加到文件末尾)、'r+'(读写)等。

buffering:可选,设置缓冲策略。

encoding:可选,用于指定文件的编码方式,如 'utf-8'。

errors:可选,指定编码和解码错误时的处理方式。

newline:可选,控制跨平台行尾符的行为。

closefd:可选,如果文件描述符是用 os.open() 打开的,并且传递给了 open()closefd 应该为 False,否则 open() 关闭文件时也会关闭文件描述符。

opener:可选,一个可调用对象,用于打开文件(通常是底层系统调用),通常不需要。

读取文件

# 打开文件并读取内容  
with open('example.txt', 'r', encoding='utf-8') as file:  
    content = file.read()  
    print(content)  
  
# 使用with语句可以自动管理文件的打开和关闭

 写入文件

# 打开文件并写入内容  
with open('output.txt', 'w', encoding='utf-8') as file:  
    file.write('Hello, World!')  
  
# 如果文件已存在,'w' 模式会覆盖原有内容

 追加内容到文件

# 打开文件并追加内容  
with open('output.txt', 'a', encoding='utf-8') as file:  
    file.write('\nAnother line.')  
  
# 'a' 模式会在文件末尾追加内容,不会覆盖原有内容

读写文件

# 打开文件进行读写  
with open('example.txt', 'r+', encoding='utf-8') as file:  
    content = file.read()  
    print(content)  
    file.write('\nSome new content.')  
  
# 注意:'r+' 模式时,如果文件不存在会抛出 FileNotFoundError

二、Json与pickle

序列化,将python数据结构 转换为字符串;反序列化,将字符串 转换为python数据结构 方便解析。

json是一种轻量级数据格式,适用与所有编程语言。

json序列化

1.方式一:dumps,第一步,序列化成字符串,第二步,将字符串写入文件。

datas = {
    "user": [
        {"id": 101, "un": "张三", "pwd": "123456"}
    ],
    "student": [],
    "z": None
}
datas_str = json.dumps(datas)
with open("./示例.txt", 'w') as f:
    f.write(datas_str)

2.方式二:dump,一步完成,把序列化结果写入文件‘。

with open("./示例.txt", 'w') as f:
    json.dump(datas, f)

 json反序列化

1.方式一:loads,第一步,读取文件内容,返回字符串,第二步,将字符串反序列化为python数据结构。

with open("./data.txt", "r") as f:
    datas = json.load(f)
    first_user = datas["user"][0]
    print(first_user.get("un"), first_user.get("pwd"))

2.方式二:load,一步完成,把文件内容反序列化成python数据结构。

with open("./data2.txt", "rb") as f:
    data = pickle.load(f)

三、Os模块

Os模块全称操作系统模块。

相关指令:

os.curdir:当前路径

import os

print(os.curdir)
#结果:.

os.pardir:上级路径

import os

print(os.aprdir)
#结果:..

os.chdir:更改路径

os.listdir:当前路径下文件信息

import os
print(os.listdir("d:\\测试文件"))
#结果:['01.txt', '21.txt']

os.mkdir:创建文件夹

import os
os.mkdir("d:\\测试文件\\创建文件夹测试")

 

os.rmdir:删除文件夹

import os
os.rmdir("d:\\测试文件\\创建文件夹测试")

 

os.cpu.count:cpu核心参数

import os
print(os.cpu_count())
#结果:4

os.path模块

os.path.exists:路径或者文件是否存在(返回True或False)

import os
print(os.path.exists("d:\\测试文件"))
#结果:True

os.path.isfile:是否为文件(返回True或False)

import os
print(os.path.isfile("d:\\测试文件\\01.txt"))
#结果:True

os.path.isdir:是否为路径(返回True或False)

import os
print(os.path.isdir("d:\\什么文件"))
#结果:False

os.path.split:分割最后一部分和前面路径

import os
print(os.path.split("d:\\测试文件\\测试文件2\\01.txt"))
#结果:('d:\\测试文件\\测试文件2', '01.txt')

os.path.join:将多个部分组合成一个路径

import os
path = os.path.join("d:", "one", "two", "tree.txt")

os.path.abspath:绝对路径,abspath(os.curdir)

import os
print(os.path.abspath("d:\\测试文件\\创建文件夹测试"))
#结果:d:\测试文件\创建文件夹测试

os.path.dirname:当前路径的父路径

import os
print(os.path.dirname("d:\\测试文件\\创建文件夹测试"))
#结果:d:\测试文件

__file__:获取当前文件

import os
print(os.path.dirname(__file__))

总结

Open.Json.pickle.Os是python开发过程中比较核心的内容。我们在学习过程中应当更加注意!

制作不易,多多点赞收藏支持哦!♥

  • 28
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值