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

1、两种写法

  1.1 第一种

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

  1.2 第二种

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

2、使用python读文本文件

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

  1 import os

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

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

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

    f.readlines()

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

    f.read()

3、使用python写文本文件

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

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

    f.write('一大段文字')

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

    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模块 

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

  4.3 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({})

四、Python文件操作的更多相关文章

  1. python学习 (三十四) Python文件操作

    1 写文件 my_list = ["] my_file = open("myfile.txt", "w") for item in my_list: ...

  2. 初学Python——文件操作第二篇

    前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...

  3. Python基础篇【第2篇】: Python文件操作

    Python文件操作 在Python中一个文件,就是一个操作对象,通过不同属性即可对文件进行各种操作.Python中提供了许多的内置函数和方法能够对文件进行基本操作. Python对文件的操作概括来说 ...

  4. [Python学习笔记][第七章Python文件操作]

    2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...

  5. Python文件操作与函数目录

    文件操作 python文件操作 函数 Python函数学习——初步认识 Python函数学习——作用域与嵌套函数 Python函数学习——匿名函数 python内置函数 Python函数学习——递归 ...

  6. day8.python文件操作

    打开和关闭文件 open函数 用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写. file = open(file_name [, access_ ...

  7. 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()

    嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...

  8. Python之路Python文件操作

    Python之路Python文件操作 一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r&qu ...

  9. python 文件操作 r w a

    python基础-文件操作   一.文件操作 对文件操作的流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件       打开文件时,需要指定文件路径和以何等方式打开文件, ...

  10. Python:文件操作技巧(File operation)(转)

    Python:文件操作技巧(File operation) 读写文件 # ! /usr/bin/python #  -*- coding: utf8 -*- spath = " D:/dow ...

随机推荐

  1. 记录 shell学习过程(7) case 以及 shell 的特殊变量

    case 语法 read -p "num:" n case $n in ) echo haha ;; ) echo hehe ;; ) echo heiehi ;; *) echo ...

  2. 修改oracle数据库用户名和密码

    第一步:连接数据库 使用ssh工具以root身份连接服务器, 然后切换到oracle用户:su - oracle(回车) 使用sqlplus连接数据库:sqlplus /nolog(回车) 以管理员身 ...

  3. java 中使用MD5加密 , 入库时对密码进行加密

    import lombok.extern.slf4j.Slf4j; import java.security.MessageDigest; @Slf4j public class MD5Util { ...

  4. vue实现隔行换色,下拉菜单控制隔行换色的颜色

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. JavaScript——BOM和DOM

    什么是BOM bom:浏览器对象模型 什么是DOM dom:文档对象模型 BOM操作: 调用windows浏览器窗口 windows对象可以通过点调用子对象 windows.navigator对象,可 ...

  6. 关于layui的日期和时间组件laydate闪屏的坑

    https://blog.csdn.net/liangwenli_/article/details/82786713 jsp页面: <input type="text" cl ...

  7. 将java字节自动转为"B", "KB", "MB", "GB", "TB"等

    //字节转换 public static String readableFileSize(long size) { if (size <= 0) return "0"; fi ...

  8. 【Python】 基础语法

    Python 语言与 Perl,C 和 Java 等语言有许多相似之处.但是,也存在一些差异. 第一个 Python 程序  欢迎,入坑! Python 标识符 在 Python 里,标识符由字母.数 ...

  9. P2141珠心算测验题解

    先来看一下题目:某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法.他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和? 这 ...

  10. php自制工具函数,常用的函数集合

    字符串与爬虫相关 1,解析url /** * 模拟访问,可get可post * @param $curl * @param $postInfo post数组/字符串,不填默认没有post * @par ...