python中 文件的操作 和json的用法

这篇博客介绍了Python中文件的存储、数据持久化和基本操作,包括打开、读写文件。同时,详细讲解了JSON数据,从概念到Python与JSON之间的相互转换,帮助理解如何在Python中使用JSON进行数据存储。
摘要由CSDN通过智能技术生成

文件操作

一、文件操作

1.计算机数据的存储

"""
计算机的存储系统分为 运行内存 和 硬盘 两种:
运行内存:用来保存程序运行过程中产生的数据,程序运行结束后会自动销毁
硬盘: 硬盘是用来保存文件的,保存在文件中的数据就是保存在硬盘中的。除非手动删除,否则数据会一直存在
"""

2.数据持久化

"""
数据持久化就是讲数据以各种形式保存到硬盘中(保存到本地文件中)
"""

3.文件操作

"""
文件操作基本步骤:打开文件 -> 操作文件(读、写) -> 关闭文件
"""
# 1)打开文件
"""
open(file, mode='r', encoding=None)   -  以指定的模式打开指定文件并且返回一个文件对象

说明:
a. file  -  文件路径,字符串类型
            绝对路径:文件/文件夹的全路径  (一般不写绝对路径)
            相对路径:只写文件绝对路径的一部分,另外一部分用特殊符号代替
                    ./  - 表示当前目录(当前写代码的文件所在的文件夹), 可以省略
                    ../ - 表示当前目录的上层目录
                    .../  - - 表示当前目录的上层目录的上层目录
                    ..../
                    ...../            
"""
# 绝对路径
open(r'/Users/yuting/授课/python2002/01语言基础/day14-文件操作/files/text.txt')

# 相对路径: ./
open('./files/text.txt')
open('./text2.txt')
open('files/text.txt')

# 相对路径:../
open('../day14-文件操作/files/text.txt')


"""
b. mode  -  打开方式,字符串类型
            第一组:控制操作类型
            r  - 以只读的方式打开文件(默认值)
            w  - 以只写的方式打开文件(打开前会先清空原文件中的内容)
            a  - 以只写的方式打开文件;
            第二组:控制数据类型(文本-str/二进制数据-bytes)
            t  -  操作的数据是文本数据(默认)
            b  -  操作的数据是二进制数据
            
            注意:每一组值只选一个,两组值进行组合使用
"""
# 情况一:r、rt
# f = open('files/text.txt', 'rt')
# content = f.read()
# # f.write('abc')   # io.UnsupportedOperation: not writable
# print(content)
# print(type(content))   # <class 'str'>

# 情况二:rb
# f = open('files/text.txt', 'rb')
# content = f.read()
# print(content)
# print(type(content))   # <class 'bytes'>

# 情况三:wt
# f = open('files/text.txt', 'w')
# # f.read()      # io.UnsupportedOperation: not readable
# f.write('abc123')

# 情况四:at
# f = open('files/text.txt', 'a')
# # f.read()   # io.UnsupportedOperation: not readable
# f.write('你好吗?')

# 情况五:wb
f = open('files/text.txt', 'wb')
f.write(b'how are you!')     # TypeError: a bytes-like object is required, not 'str'
f.write(bytes('你好!', encoding='utf-8'))

"""
c. encoding  - 文本编码方式; 直接写 'utf-8'
               注意:如果打开方式中带 b , 不能设置 encoding
"""
# open('files/text.txt', 'rb', encoding='utf-8')    #   ValueError: binary mode doesn't take an encoding argument
f = open('files/text.txt'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值