1.在同一目录下新建文本文件 “爱了”

2.在该文件下写入内容,同时留意pycharm右下角的编码格式为 utf- 8

3.下面程序中的read函数会索引系统默认的编码格式,winx下是gbk ,所以第一行里要指定编码格式与‘’爱了‘’文件一致

f = open('爱了', encoding = 'utf8')
data = f.read()
print(data)
f.close()

  

一. 文件操作的三种方式  只读r   只写w   追加a

只读r:

f = open('爱了', 'r', encoding = 'utf8')
print(f.readable()) #判断文件是否可读
print('第一行',f.readline(), end = '') #一次读一行
print('第二行',f.readline(), end = '') #加end是为了取消默认的回车换行
print('第三行',f.readline())
f.close()

注意:read() 是把文件读完,再用readline() 就读不出内容了

readlines() 是把文件内容全读出来,放进一个列表里

f = open('爱了', 'r', encoding = 'utf8')
print(f.readlines())

只写w:  若文件名存在,直接覆盖掉,若文件不存在,则新建该文件

f = open('金灵', 'w', encoding = 'utf8')
f.write('同学吗\n') #自己写换行符,就不会和下面的内容写在一行了
f.write('啊啊\n')
print(f.writable()) #判断是否可写
f.writelines(['行也思君\n', '坐也思君\n'])#以列表形式写入
f.close()

追加a:

f = open('金灵', 'a', encoding = 'utf8')
f.write('写在文件最后\n')
f.close()

二. r+:读写   w+ : 写读   a+ :追加,读

f = open('爱了', 'r+', encoding = 'utf - 8')
data = f.read()
print(data)
f.write('么么\n')
f.close()

三. 在计算机层面所有修改,都是覆盖。

src_f = open('金灵', 'r', encoding = 'utf-8')
data = src_f.readlines() #得到一个列表
src_f.close() dst_f = open('金灵_new', 'w', encoding = 'utf-8')
dst_f.writelines(data[0:4])
dst_f.close()

当把上述程序中的  金灵_new 改为  金灵  就变相完成了文件内容的修改

四. 优化

用with 语句,就不用每次都写close了,另外,一行代码太长的话,用  \  ,再回车换行。

with open('金灵_new', 'r+', encoding = 'utf-8') as f:
data = f.read()
print(data)

python课堂整理17---文件操作(上)的更多相关文章

  1. python课堂整理18---文件操作(下)

    一.b模式,字节方式(二进制的单位),rb wb ab f = open('test.py', 'rb', encoding = 'utf-8') 报错,因为用了b模式,就不能再指定编码格式了,已经指 ...

  2. 真香!Python十大常用文件操作,轻松办公

    日常对于批量处理文件的需求非常多,用Python写脚本可以非常方便地实现,但在这过程中难免会和文件打交道,第一次做会有很多文件的操作无从下手,只能找度娘. 本篇文章整理了10个Python中最常用到的 ...

  3. 小白的Python之路 day2 文件操作

    文件操作 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 ...

  4. 第三章:Python基础の函数和文件操作实战

    本課主題 Set 集合和操作实战 函数介紹和操作实战 参数的深入介绍和操作实战 format 函数操作实战 lambda 表达式介绍 文件操作函数介紹和操作实战 本周作业 Set 集合和操作实战 Se ...

  5. Python之旅Day3 文件操作 函数(递归|匿名|嵌套|高阶)函数式编程 内置方法

    知识回顾 常见五大数据类型分类小结:数字.字符串.列表.元组.字典 按存值个数区分:容器类型(列表.字典.元组) 标量原子(数字.字符串) 按是否可变区分:可变(列表.字典) 不可变(数字.字符串.元 ...

  6. Python基础-week03 集合 , 文件操作 和 函数详解

    一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...

  7. python基础学习笔记——文件操作

    文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...

  8. Python修炼之路-文件操作

    Python编程之文件操作 文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 每次文件打开.读取信息时,Python自动记录所达到的位置,好比一个书签,之后每一次 ...

  9. Python基本语法_文件操作_读写函数详解

    目录 目录 软件环境 file文件对象 open文件操作 读文件 read读取所有文件内容 readline获取一行内容 readlines读取所有文件内容 readreadlinereadlines ...

随机推荐

  1. .NET错误:The tag 'BusyIndicator' ('CallMethodAction')does not exist in XML namespace

    将一个项目由VS2010升级为VS2012后,在确保代码无误的情况下编译程序出现以下错误提示: 解决方法:将4.0.0.0的程序集Microsoft.Expression.Interactions.及 ...

  2. 创建服务消费者(Feign)

    概述 Feign 是一个声明式的伪 Http 客户端,它使得写 Http 客户端变得更简单.使用 Feign,只需要创建一个接口并注解.它具有可插拔的注解特性,可使用 Feign 注解和 JAX-RS ...

  3. 05-MySQL的完整性约束

    1.整体说明(1)讨论重点内容    not null 与default    unique:表中该值唯一,不能有重复值    primary    auto_increment    foreign ...

  4. Django之forms组件使用

    注册功能 1.渲染前端标签获取用户输入 >>> 渲染标签 2.获取用户输入传递到后端校验 >>> 校验数据 3.校验未通过展示错误信息 >>> 展 ...

  5. 推荐一个高效,易用功能强大的可视化API管理平台

    项目管理 提供基本的项目分组,项目管理,接口管理功能 接口管理 友好的接口文档,基于websocket的多人协作接口编辑功能和类postman测试工具,让多人协作成倍提升开发效率 MockServer ...

  6. kubernetes实战篇之通过api-server访问dashboard

    系列目录 前面一节我们介绍了如何使用kube-proxy搭建代理访问dashboard,这样做缺点非常明显,第一可以通过http访问,第二是这种方式要启动一个后台进程,如果进程关闭了则不能够访问了,还 ...

  7. python算法与数据结构-栈(43)

    一.栈的介绍 栈作为一种数据结构,是一种只能在一端进行插入和删除操作.它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读 ...

  8. idea+mvc项目转换小记

    经过大家协商,决定还是紧跟时代潮流,把项目转到idea下,并且重新组织项目结构.项目环境原本为myeclipse+maven+springMVC,由于本人提议的boot+cloud变化太大,成本巨大, ...

  9. Enum的简单扩展

    1 添加一个描述的Attribute public enum MessageResult { [System.ComponentModel.Description("未通过")] ...

  10. oralce中的dual详解 转 http://blog.sina.com.cn/s/blog_a5a24bcb0100zeay.html

    dual是属于sys的只有一个X varchar2(1)列查询虚拟列不会产生逻辑IO========================================================== ...