操作文件的套路
在 计算机 中要操作文件的套路非常固定,一共包含三个步骤:

  • 打开文件
  • 读、写文件
    1).读 将文件内容读入内存
    2.)写 将内存内容写入文件
  • 关闭文件
    操作文件的函数/方法
    序号 函数/方法 说明
    01 open 打开文件,并且返回文件操作对象
    02 read 将文件内容读取到内存
    03 write 将指定内容写入文件
    04 close 关闭文件
  • open 函数负责打开文件,并且返回文件对象
  • read/write/close 三个方法都需要通过 文件对象 来调用

打开文件的方式
访问方式 说明
r 以只读方式打开文件。文件的指针将会放在文件的开头,这是默认模式。如果文件不存在,抛出异常
w 以只写方式打开文件。如果文件存在会被覆盖。如果文件不存在,创建新文件
a 以追加方式打开文件。如果该文件已存在,文件指针将会放在文件的结尾。如果文件不存在,创建新文件进行写入
r+ 以读写方式打开文件。文件的指针将会放在文件的开头。如果文件不存在,抛出异常
w+ 以读写方式打开文件。如果文件存在会被覆盖。如果文件不存在,创建新文件
a+ 以读写方式打开文件。如果该文件已存在,文件指针将会放在文件的结尾。如果文件不存在,创建新文件进行写入

大文件复制

file_read = open('111','r')
file_write = open('222','w')

while True:
    test = file_read.readline()
    if not test:
        break
    file_write.write(test)

file_read.close()
file_write.close()

文件编码
ASCII 编码

  • 计算机中只有 256 个 ASCII 字符
  • 一个 ASCII 在内存中占用 1 个字节 的空间
  • 8 个 0/1 的排列组合方式一共有 256 种,也就是 2 ** 8
  • UTF-8 编码格式
  • 计算机中使用 1~6 个字节 来表示一个 UTF-8 字符,涵盖了 地球上几乎所有地区的文字
  • 大多数汉字会使用 3 个字节 表示
  • UTF-8 是 UNICODE 编码的一种编码格式

Ptyhon 2.x 中如何使用中文
Python 2.x 默认使用 ASCII 编码格式 Python 3.x 默认使用 UTF-8 编码格式

  • 在 Python 2.x 文件的 第一行 增加以下代码,解释器会以 utf-8 编码来处理 python 文件
# *-* coding:utf8 *-*

或者

# coding=utf8

例子:

# *-* coding:utf8 *-*

# 在字符串前,增加一个 `u` 表示这个字符串是一个 utf8 字符串
hello_str = u"你好世界"

print(hello_str)

for c in hello_str:
    print(c)

eval 函数
eval() 函数十分强大 —— 将字符串 当成 有效的表达式 来求值 并 返回计算结果

# 基本的数学计算
In [1]: eval("1 + 1")
Out[1]: 2

# 字符串重复
In [2]: eval("'*' * 10")
Out[2]: '**********'

# 将字符串转换成列表
In [3]: type(eval("[1, 2, 3, 4, 5]"))
Out[3]: list

# 将字符串转换成字典
In [4]: type(eval("{'name': 'xiaoming', 'age': 18}"))
Out[4]: dict