1、文件读写的两种方式

  1,  f = open("文件位置",mode = "r", encoding = "utf-8")

    content = f.read()

   f.close()

    注意: 读取完的文件句柄一定要关闭. 即f.close().

   2,  with open("文件位置",mode = "r", encoding = "utf-8") as f:

     content = f.read()

    读取完自动关闭.

2、r , w , a , r+ , w+ , a+

 r: 只读

  read(): 读取文件的所有内容.

  read(n): 读取文件的前n个字符. 如果继续读取的话会在当前位置继续往后读, 而不是从头开始.

      (如果以rb模式读取的话, read(n) 表示读取前n个字节).

  readline(): 一次读取一行内容, 每行最后面有换行符 "\n". 继续读取的话会在当前位置继续往后读.

  readlines(): 读取全部内容, 并将每行内容作为一个元素放进列表中. 继续读取的话会在当前位置继续往后读.

 w: 只写

  如果文件不存在, 则先创建文件, 再写进去; 如果文件已经存在, 则先删除全部旧内容, 再写新内容.

 a: 追加

  不论是a 还是a+ , 不管光标在什么位置, 都是在文件末尾添加新内容.

 r+: 读写

  光标位置是在开头的, 读完之后再写入, 写进文件末尾.

  f = open("文件位置",mode = "r", encoding = "utf-8")

  content = f.read()

  f.write("内容")

  注意: 如果先写再读, 则会在文件开头位置进行修改(不是添加),  然后读取修改内容后面的内容.(错误方式)

 w+: 写读

  先将内容清空, 然后再写进去, 光标位于文件末尾, 读取文件内容为空.

 a+: 追加读 

  不论是先读还是后读都是读取不到内容的.

 rb, wb

  二进制的方式读取内容, 不用声明encoding编码方式, 常用于传输非文本内容(图片,音乐,视频等文件).

3、seek(), tell()

 seek(): 光标移动到某位置. 

  f = open("文件位置",mode = "r", encoding = "utf-8")

  f.seek(0)  ----> 光标移动到开头位置

  print(f.read())  ----> 读到全部内容

  f.seek(0,2)  ----> 光标移动到文件末尾

  print(f.read())  ----> 读不到内容

  注意: seek(参1,参2)  参1:表示偏移多少单位(字节为单位), 参2: 表示偏移到什么位置(0:文件开头; 1:当前位置; 2:文件末尾)

 tell(): 光标当前位置.

  输出的结果也是以字节为单位.

4、修改文件

  只能将文件读取到内存中然后修改内容, 重新复制一份然后删除旧文件, 给新文件命名.

 import os
with open("诗词","r",encoding="utf-8") as f ,\
open("诗词_副本","w",encoding="utf-8") as s:
for i in f:
i= i.replace("的","得")
s.write(i)
os.remove("诗词")
os.rename("诗词_副本","诗词")

文件修改

python摸爬滚打之day8---文件操作的更多相关文章

  1. python 全栈开发,Day8(文件操作)

    一.文件操作流程 文件以什么编码存储的,就以什么编码打开 参数: 1.文件路径 2.编码方式,encode 3.执行动作(打开方式):只读,只写,追加,读写,写读... 打开一个已经存在的文件 f = ...

  2. python学习day8 文件操作(深度学习)

    文件操作 (day7内容扩展) 1 文件基本操作 obj = open('路径',mode='模式',encoding='编码')obj.write()obj.read()obj.close() 2 ...

  3. python基础八之文件操作

    python的文件操作 1,打开文件 编码方式要和文件的编码方式相同! #open('路径','打开方式','指定编码方式') f = open(r'E:\pycharm\学习\day8\test', ...

  4. Python基础7:文件操作

    [ 文件操作] 1 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. 起来独自绕阶行. 人悄悄,帘外月胧 ...

  5. python函数基础 与文件操作

    函数的定义 函数是通过赋值传递的,参数通过赋值传递给函数.def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: def function_name(arg1,arg2[,.. ...

  6. Python 第三天 文件操作(2)

    文件操作 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开 文件句柄 = file('文件路径', '模式') 注:python中打开文件有两种方式,即:open(...) 和  fi ...

  7. python学习笔记4(文件操作)

    文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”)      直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...

  8. python学习笔记-(七)python基础--集合、文件操作&函数

    本节内容 1.集合操作 2.文件操作 3.字符编码与转码 4.函数操作 1.集合操作 集合是一个无序的.不重复的数据组合: 1.1 常用操作 它的作用是: 1)自动去重:列表变成集合,自动去重: &g ...

  9. Python自动化 【第三篇】:Python基础-集合、文件操作、字符编码与转码、函数

    1.        集合 1.1      特性 集合是一个无序的,不重复的数据组合,主要作用如下: 去重,把一个列表变成集合实现自动去重. set可以看成数学意义上的无序和无重复元素的集合,因此,两 ...

  10. python学习笔记三 文件操作(基础篇)

    文件操作 打开文件 open(name[,mode[,buffering]])   open函数使用一个文件名作为强制参数,然后返回一个文件对象.[python 3.5 把file()删除掉]   w ...

随机推荐

  1. git配置用户名邮箱,全局配置/单仓库配置

    在项目根目录下进行单仓库配置(作用域只在本仓库下): git config user.name "gitlab's Name" git config user.email &quo ...

  2. 安卓开发笔记——关于开源项目SlidingMenu的使用介绍(仿QQ5.0侧滑菜单)

    记得去年年末的时候写过这个侧滑效果,当时是利用自定义HorizontalScrollView来实现的,效果如下: 有兴趣的朋友可以看看这篇文件<安卓开发笔记——自定义HorizontalScro ...

  3. 可能是最早的学习Android N新特性的文章

    可能是最早的学习Android N新特性的文章 Google在今天放出了Android N开发者预览版.Android N支持Nexus6及以上的设备.5太子Nexus5不再得到更新. Android ...

  4. Python 函数(默认参数)

    默认参数 设置默认参数时,有两点需要注意:一是必选参数在前,默认参数在后,否则python的解释器会报错二是当函数有多个参数时,把变化大的参数放前面,变化小的放后面,变化小的参数就可以作为默认参数 d ...

  5. oracle存储过程遇到的问题

    最近新的项目,会批量执行数据,用到了存储过程和函数,遇到的问题记录如下: 1.涉及大量数据,所以决定分批commit数据 2.out无论是存储过程还是函数,都会返回数据,当时当我们手动raise(抛出 ...

  6. [Python] 01 - Number

    故事背景 一.大纲 如下,chapter4 是个概览,之后才是具体讲解. 二. 编译过程 Ref: http://www.dsf.unica.it/~fiore/LearningPython.pdf

  7. post请求参数问题

    from:https://www.cnblogs.com/btgyoyo/p/6141480.html jQuery的ajax方法和post方法分别发送请求,在后台Servlet进行处理时结果是不一样 ...

  8. Markdown 字体

    在 Markdown 中,使用 * 来表示斜体,使用 ** 来表示加粗,使用 <font> 标签来设置字体 .字号与颜色 *我是斜体* **我是粗体** <font face=&qu ...

  9. [APUE]进程关系(下)

    一.控制终端 对话期和进程组有一些其他特性: 一个对话期可以有一个单独的控制终端.通常是我们在其上登录的终端设备或伪终端设备. 建立与控制终端连接的对话期首进程,被称之为控制进程 一个对话期中的几个进 ...

  10. SSM项目实战

    1.  实战才是检验学的怎么样的标准,一个小项目,运行老是出错,加上自己一贯的马虎的习惯,不严谨,就使学习之路更加的曲折了,感觉自己在这一行中比较吃力,但是自己选择了这条路,就得好好走下去,不要怀疑自 ...