一、文件操作参数

1.文件路径

1)绝对路径:从根目录开始一级一级查找直到找到文件。

f=open('e:\文件操作笔记.txt',encoding='utf-8',mode='r')
content=f.read()
print(content)
f.close

2)相对路径:在同一文件夹下直接写文件名即可。

f=open('log',encoding='utf-8')
content=f.read()
print(content)
f.close()

2.编码方式

3.执行动作

f=open('e:\文件操作笔记.txt',encoding='utf-8',mode='r')
content=f.read()
print(content)
f.close

f:时变量,f_obj,file,f_handler,...文件句柄

open:window的系统功能

'e:\文件操作笔记.txt':文件路径

windows默认编码方式:gbk,linux默认编码方式utf-8

流程:打开一个文件,产生一个文件句柄,对文件句柄进行操作,关闭文件。

二、 文件的打开模式

 1.读:

1)r只读:文件以什么编码方式存储的就以什么编码方式打开,编码不一致时会报错。

2)rb只读,以bytes类型读取(非文字类的文件用rb)

3)r+ 先读后追加,一定要先读后写

f = open('log',encoding='utf-8',mode='r+')
content = f.read()
print(content)
f.write('aaa')
f.close()

4)r+b以bytes类型操作的可读可写

 2.写:

1)w只写

没有文件创建一个文件写入内容

with open('log1',encoding='utf-8',mode='w') as f:
f.write('过会就可怜了')
f.close()

有文件将原文件内容清空,再写入内容。

with open('log1',encoding='utf-8',mode='w') as f:
f.write('666')
f.close()

2)wb只写  bytes类型写

f=open('log',mode='wb')
f.write('老男孩'.encode('utf-8'))
f.close

3)w+ 写读,先写后读

with open('log',encoding='utf-8',mode='w+') as f:
f.write('中国')
print(f.tell())#按字节去读光标位置
f.seek(3) #按字节调整光标位置
print(f.read())
f.close()

4)w+b以bytes类型操作的可写可读

3.追加:

1)a只追加写模式

2)ab只追加写,以bytes类型操作

3)a+追加读

f = open('log',encoding='utf-8',mode='a+')
f.write('BBB')
content = f.read()
print(content)
f.close()

4)a+b以bytes类型操作的可写可读

三、文件的操作方法

1.f.read()全部读出来

f=open('log',encoding='utf-8')
content=f.read()
print(content,type(content))
f.close

2.f.readline()一行一行的读

3.f.readlines()将原文件的每一行作为一个列表的元素

4.read(n)读取一部分

在r模式下read(n)按照字符去读取

在rb模式下read(n)按照字节去读取

5.循环读取

f = open('log',encoding='utf-8')
for i in f:
print(i.strip())
f.close

6.f.writable()是否可写

f = open('log',encoding='utf-8')
print(f.read())
print(f.writable()) #False
f.close()

7.f.truncate()按字节对原文件截取

f = open('log',encoding='utf-8',mode='a')
f.truncate(3)
f.close()

8.f.readable()是否可读

9.f.seek()按字节调整光标位置

10.f.tell()按字节去读光标位置

四、文件的修改

1,将原文件读取到内存。
2,在内存中进行修改,形成新的内容。
3,将新的字符串写入新文件。
4,将原文件删除。
5,将新文件重命名成原文件。

五、with open('log'.encoding='utf-8') as f:

第一个功能:自动关闭文件句柄。      

with open('log',encoding='utf-8') as f:
print(f.read())

第二个功能:一次性操作多个文件句柄。

with open('log',encoding='utf-8') as f1,\
open('log1',encoding='utf-8') as f2:
print(f1.read())
print(f2.read())

Python基础—文件操作(Day8)的更多相关文章

  1. python基础-文件操作

    一.文件操作 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 打开文件的模式有: r ,只读模式[默认模式,文件必须存在,不存在则抛出异 ...

  2. python基础-文件操作(10)

    一.什么是文件 等等这些都叫做文件,各种格式的.但不仅仅限制于这些. 二.文件的作用 大家应该听说过一句话:“好记性不如烂笔头”. 不仅人的大脑会遗忘事情,计算机也会如此,比如一个程序在运行过程中用了 ...

  3. Python基础--文件操作和集合

    这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件file.txt: 我们哭了 ...

  4. python 基础文件操作

    实时刷新到硬盘里 f= open('hh','w',encoding='utf8') f.write('gyftyftft') f.write('hghgh\njkkjk') f.flush()#实时 ...

  5. Python 基础 文件操作

    字符串与字节之间的转换 # utf-8 一个汉字 占三个字节 # gbk 一个汉字 占两个字节 # 字符串转换成字节 print(bytes('汉字', encoding='utf-8'))print ...

  6. python基础--文件操作实现全文或单行替换

    python修改文件时,使用w模式会将原本的文件清空/覆盖.可以先用读(r)的方式打开,写到内存中,然后再用写(w)的方式打开. 替换文本中的taste 为 tasting Yesterday whe ...

  7. Python基础————文件操作

    文件操作 4.1 文件基本操作 obj = open('路径',mode='模式',encoding='编码') # 表示要干嘛 读 还是写 obj.write() #写什么内容 obj.read() ...

  8. python基础 — 文件操作

    读取键盘输入 Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘.如下: raw_input input raw_input函数 raw_input([prompt]) 函数从 ...

  9. Python基础-文件操作(七)

    一.文件基本操作 1.open 打开模式: w模式 写模式write 文件不存在时会创建文件,如果文件已存在则会清空文件 r模式 读模式read 文件不存在就报错,存在则准备读取文件 a模式 追加模式 ...

随机推荐

  1. 【Spring专场】「MVC容器」不看源码就带你认识核心流程以及运作原理

    前提回顾 之前已经写了很多问斩针对于SpringMVC的的执行原理和核心流程,在此再进行冗余介绍就没有任何意义了,所以我们主要考虑的就是针对于SpringMVC还没但大框架有介绍的相关内容解析分析和说 ...

  2. 阿里云服务器ECS Ubuntu16.04 + Seafile 搭建私人网盘 (Seafile Pro)

    原文链接:? 传送门 本文主要讲述 使用 Ubuntu 16.04 云服务器 通过脚本实现对 Seafile Pro 的安装,完成私人网盘的搭建 首先给出 Seafile 专业版的下载地址(Linux ...

  3. elasticsearch之集成中文分词器

    IK是基于字典的一款轻量级的中文分词工具包,可以通过elasticsearch的插件机制集成: 一.集成步骤 1.在elasticsearch的安装目录下的plugin下新建ik目录: 2.在gith ...

  4. Python多环境管理神器(Anaconda)

    为了解决python多版本共存,解决不同版本之间的依赖冲突,虚拟环境隔离等问题,我们前面介绍了venv.virtualenv.virtualenvwrapper.pyenv.pipenv等众多工具.下 ...

  5. Android学习笔记5

    SharedPreferenced的使用方法:SharedPreferences 是一个轻量级的存储类,主要是保存一些小的数据,一些状态信息 第一步:初始化         * 获取SharedPre ...

  6. 【笔记】macos上部署thanos_receiver + thanos_query

    为了方便起见,在mac笔记本上进行了测试 1.写一个发送数据的客户端 package main import ( "fmt" "io/ioutil" " ...

  7. 【记录一个问题】thinkpad x1笔记本,安装ubuntu 16后,拔掉U盘,总是启动到windows,无法启动到ubuntu

    如题 昨天使用ubuntu 18没有这个问题 ============================= 12:38 1.安装完成出现重启后,一定要拔掉U盘 2.BIOS里面的security boo ...

  8. 搭建服务器之文件共享cifs,nfs,samba

    cifs: 微软系统中用于网上邻居共享的一个机制,在linux下也可以通过命令mount -t cifs .....来挂载共享的文件目录等. nfs: linux之间的共享文件方式,基于rpc ser ...

  9. 线程终止的四种方式,interrupt 方法使用的简单介绍。

    一 正常结束. package com.aaa.threaddemo; /* 一 终止线程的四种方式? * 程序运行结束,线程终止. * */ public class ThreadTerminati ...

  10. el表达式中的${param}用法

    el表达式中的${param}? 1. 2. ${param.name} 等价于 request.getParamter("name"),这两种方法一般用于服务器从页面或者客户端获 ...