221012 Python学习:文件操作、数据持久化、数据持久化相关方法、eval函数的用法

221012 Python学习:文件操作、数据持久化、数据持久化相关方法、eval函数的用法

一、数据相关基础和文件操作

1)数据存储
  • 程序中的数据默认是保存在运行内存中的;保存在运行内存中的数据在程序运行结束后会自动销毁。 —— 就会导致这次运行程序产生的数据在下一次运行程序的时候无法使用。
  • 如果将数据保存在磁盘中,除了人为删除或者磁盘损坏,数据就会一直存在(磁盘是以文件为单位保存数据的)
2)数据持久化
  • 数据持久化就是指将数据以文件的形式保存到磁盘中;
  • 常见的数据持久化工具:数据库文件(.db、.sqlite)、json文件(.json)、excel文件、csv文件、txt文件、plist文件
3)文件操作:操作文件内容

文件操作基本流程:打开文件 → 操作文件(读、写) → 关闭文件

  • 打开文件:open(file, mode= ‘r’, encoding=None) ,以指定的方式打开指定文件返回一个文件对象

    1. file — 文件路径(文件在计算机中的位置)

      • 绝对路径:文件在计算机中的全路径(Windows从盘开始写)

      • 相对路径(必须将需要打开的文件放在工程目录)

        写路径的时候用. 表示当前目录(当前目录是指当前代码所在文件所在的文件夹)

        写路径的时候用… 表示当前目录的上级目录

      # 绝对路径(可以复制文件地址看绝对路径)
      path = r'D:\Hycpython\Day15 文件操作\files\test1.txt'
      open(path)
      
      # 相对路径
      # path = r'.\files\test1.txt'
      path = './files/test1.txt'
      open(path)
      
      path = '../Day15 文件操作/files/test1.txt'
      open(path)
      
    2. mode — 文件打开方式

      (决定打开文件后是能读还是能写?决定打开文件后操作文件的时候对应的数据的类型是字符串还是二进制)

      • 第一组值(决定读写方式):

        r — 只读 (默认是r)

        w — 只写,打开的时候会清空原文件内容

        a — 只写。打开的时候不会清空原文件内容

        **注意:**如果文件不存在,以读的方式打开会报错,以写的方式打开不但不会报错还会自动创建这个文件。

      • 第二组值(决定数据类型)

        t — 字符串类型(默认是t)

        b — 二进制类型

        **注意:**给mode赋值的时候必须在两组值中每组值选择一个选项:‘rt’、‘tr’、‘r’…等;

        **注意:**打开文本文件可以使用t 也可以用b (一般使用t),但是二进制文件(图片、音频、视频)等只能用b打开。

      # 读写方式
      # ============r只读=============
      f = open('files/test1.txt', 'r')
      f.read()
      # f.write('abc')                # 报错
      
      print('-------------------------------------------')
      
      # ============w只写且会清空原文件=============
      f = open('files/test1.txt', 'w')
      f.write('abc')
      # f.read()                   # 报错
      
      print('-------------------------------------------')
      
      # ============a只写且不会清空原文件=============
      f = open('files/test1.txt', 'a')
      f.write('abc')
      # f.read()                   # 报错
      
      print('-------------------------------------------')
      
      
      # 数据类型
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值