• 文件的基本操作


    一、文件的概念

    • 计算机的 文件,就是存储在某种 长期储存设备 上的一段 数据
    • 长期存储设备包括:硬盘、U 盘、移动硬盘、光盘...

    文件的作用:将数据长期保存下来,在需要的时候使用
    文件的存储方式:在计算机中,文件是以 二进制 的方式保存在磁盘上的
    文本文件:可以使用 文本编辑软件 查看,本质上还是二进制文件
    二进制文件:保存的内容 不是给人直接阅读的,而是 提供给其他软件使用的,例如:图片文件、音频文件、视频文件等等,二进制文件不能使用 文本编辑软件 查看

    二、文件的基本操作

    在 Python 中要操作文件需要记住 1 个函数和 3 个方法

    open 函数负责打开文件,并且返回文件对象
    read/write/close 三个方法都需要通过 文件对象 来调用

    读取文件示例

    # 1. 打开 - 文件名需要注意大小写
    file = open("README")
    
    # 2. 读取
    text = file.read()
    print(text)
    
    # 3. 关闭
    file.close()

    三、打开文件的方式

    写入文件示例

    # 打开文件
    f = open("README", "w")
    
    f.write("hello python!
    ")
    f.write("今天天气真好")
    
    # 关闭文件
    f.close()
    # 打开文件
    file = open("README")
    
    while True:
        # 读取一行内容
        text = file.readline()
    
        # 判断是否读到内容
        if not text:
            break
    
        # 每读取一行的末尾已经有了一个 `
    `
        print(text, end="")
    
    # 关闭文件
    file.close()

    四、文件管理操作

    五、文本文件的编码格式

    • 文本文件存储的内容是基于 字符编码 的文件,常见的编码有 ASCII 编码,UNICODE编码等
    • Python 2.x 默认使用 ASCII 编码格式,Python 3.x 默认使用 UTF-8 编码格式
    • ASCII 编码

      • 计算机中只有 256ASCII 字符
      • 一个 ASCII 在内存中占用 1 个字节 的空间
        • 80/1 的排列组合方式一共有 256 种,也就是 2 ** 8

      UTF-8 编码格式

      • 计算机中使用 1~6 个字节 来表示一个 UTF-8 字符,涵盖了 地球上几乎所有地区的文字
      • 大多数汉字会使用 3 个字节 表示
      • UTF-8UNICODE 编码的一种编码格式

      Ptyhon 2.x 中如何使用中文?

      • 在 Python 2.x 文件的 第一行 增加代码# *-* coding:utf8 *-*,解释器会以 utf-8 编码来处理 python 文件,这方式是官方推荐使用的!
      • 也可以使用# coding=utf8

      Python 2.x 中如何正确遍历 unicode 字符串?

      • 在 Python 2.x 中,即使指定了文件使用 UTF-8 的编码格式,但是在遍历字符串时,仍然会 以字节为单位遍历 字符串
      • 要能够 正确的遍历字符串,在定义字符串时在字符串的引号前,增加一个小写字母 u,告诉解释器这是一个 unicode 字符串(使用 UTF-8 编码格式的字符串)

      # *-* coding:utf8 *-*
      
      # 在字符串前,增加一个 `u` 表示这个字符串是一个 utf8 字符串
      hello_str = u"你好世界"
      
      print(hello_str)
      
      for c in hello_str:
          print(c)
  • 相关阅读:
    Solr学习笔记(5)—— Spring Data Solr入门
    Redis学习笔记(6)——SpringDataRedis入门
    SpringDataRedis java.net.UnknownHostException: 127.0.0.1 错误
    Spring Security 入门
    基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒)
    laravel框架中Job和事件event的解析
    Laravel源码解析之model(代码)
    Laravel框架下路由的使用(源码解析)
    Laravel服务容器的绑定与解析
    laravel框架中超实用的功能介绍
  • 原文地址:https://www.cnblogs.com/guo2733/p/10731863.html
Copyright © 2020-2023  润新知