Python文件操作

paopao00 2020-02-09

描述:Python的文件操作涉及对文件的读/写与编码的处理。

1、两种写法

1.1 第一种

1 f = open(‘文件路径‘, ‘文件操作方式‘, encoding=‘utf-8‘)
2 对文件操作
3 f.close()

1.2 第二种

1 with open(‘文件路径‘, ‘文件操作方式‘, encoding=‘utf-8‘) as f:
2     通过f来读取文件

2、使用python读文本文件

如果非要使用“~”表示“home”目录, 需要使用python的“os”模块:

  1 import os

  2 real_path = os.path.expanduser(~/project/xxx)  

参数encoding在打开文件的时候将文件转换成utf-8编码格式,从而避免乱码的出现。

读取所有行,并以列表的形式返回结果:

 1 f.readlines() 

直接把文件里面的内容用一个字符串返回:

 1 f.read() 

3、使用python写文本文件

1 with open(‘文件路径‘, ‘w‘, encoding=‘utf-8‘) as f:
2     通过f来写文件

直接将一大段字符串写入到文本中:

 1 f.write(一大段文字) 

将列表里面的所有字符串写入到文本中:

 1 f.writelines([第一段话,第二段,第三段]) 

4、使用python读写CSV文件

4.1 说明  

 (1)CSV文件可以用Excel或则Numbers打开,得到可读性很高的表格

 (2)使用python的CSV模块,可以将CSV文件的内容转换为python字典。

4.2 python读CSV文件

(1)导入CSV模块

   import csv 

(2)csv本质上是文本文件,需要先以文本文件的方式打开,再将文件对象传递给CSV模块 

with open(‘example.vsv‘, ‘r‘, encoding=‘utf-8‘) as f:
    reader = csv.DictReader(f)
    for row in reader:
        print(row)
#  也可以用迭代方式
#  reader = [row for row in csv.DictReader(f)]

4.2 python写CSV文件

(1)说明

  a.python可以把一个字典写成CSV文件,或者把一个包含字典的列表写成CSV文件。

  b.python写CSV文件比读CSV文件复杂一点,要指定列名(fieldnames),列名要和字典的Key一个一个对应

(2)写入csv文件的列名行

   writer.writeheader() 

(3)将包含字典的列表全部写入到csv文件中

   writer.writerow(字典) 

(4)格式

with open(‘example.csv‘, ‘w‘, encoding=‘utf-8‘):
    writer = csv.DictWriter(f, fieldnames=[‘Key1‘,‘Key2‘])
    writer.writeheader()
    writer.writerows(字典)
#  单行写入 
#  writer.writerow({})

相关推荐