python 基础(文件)
文件句柄:可简单理解为应该内存对象
open()函数 参考 https://www.runoob.com/python3/python3-file-methods.html
读、写、追加
'''
txt文件内容:
I
am
very
handsome
'''
#读(mode = r)
f = open('test.txt','r',encoding='utf-8')
x = f.readline() #读取文件的一行,这时文件句柄移动到下一行的位置
x = f.readlines() #从文件句柄位置开始读取整个文件内容,并将每一行作为一个元素添加到一个列表
#当一个文件很大时readlines()是行不通的,他会把整个文件加载到内存,再执行后面的代码
#这回耗费很多时间和消耗大量的内存 # 可以用读一行打印一行的方式加快文件的读取
f.seek(0) #将文件句柄挪到文件的开始位置
for l in f:
print(l.strip(),end=' ')
#结果 I am very handsome #这个方法在一边读文件一边写文件是很有用的
#写(mode = w) 如果目标文件不存在会创建一个,但是如果存在的话会把原文件内容删除,慎用!!!
# 备份一个test.txt,名为test_bak.txt
f.seek(0)
f_w = open('test_bak.txt','w') #encoding 默认utf-8
for l in f:
f_w.write(l)
#完成备份
#追加 (mode = a)在原文件的后面追加内容,是不可读的,如果文件不存在会创建一个
f_a = open('test.txt','a')
f_a.write('lalala') #'lalala' 被添加到了test.txt的末尾
f_a.close()
f_w.close()
f.close()
读写、写读、追加读写
'''
txt文件内容:
I
am
very
handsome
'''
#读写(mode = r+)
with open('test.txt','r+') as f_r_p,\
open('test_bak.txt','w+') as f_w_p,\
open('test_a.txt','a+') as f_a_p:
'''
用with语法可以省略最后的文件关闭操作,同时可以打开多个文件
1.w+,还是会将原文件内容删除然后在进行写读等操作,慎用!!!
2.r+,非常实用,但如果要对原文件直接更改是不行的,比如有'I am very handsome'这么一个
字符串,如果想把'I'改为'You',见下面代码21-24行,发现打印的结果还是'I',没有变为想要替换
的'You',因为在硬盘里的文件已经写死了,硬盘里的后面数据是不会随着前面的数据的变化而前
后挪动的,所以要修改文件可以采用复制的方法,就是在创建一个文件,并将修改的内容写入新的
文件。
'''
x = f_r_p.readline()
x.replace('I\n','You\n')
f_r_p.seek(0)
print(f_r_p.readline())
#将test.txt文件,第一行改为'You',并写入test_a.txt
f_r_p.seek(0)
for l in f_r_p:
print(l,end='')
if l=='I\n':
f_a_p.write('You\n')
else:
f_a_p.write(l)
二进制
#二进制写(mode = wb)
with open('bin.txt','wb') as f_wb:
f_wb.write(b'i am bin')
#二进制读(mode = rb)
with open('bin.txt','rb') as f_rb:
print(f_rb.readline())
python 基础(文件)的更多相关文章
- python 基础-文件读写'r' 和 'rb'区别
原文链接: python基础-文件读写'r' 和 'rb'区别 一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r ...
- Python基础--文件操作和集合
这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件file.txt: 我们哭了 ...
- python基础--文件操作实现全文或单行替换
python修改文件时,使用w模式会将原本的文件清空/覆盖.可以先用读(r)的方式打开,写到内存中,然后再用写(w)的方式打开. 替换文本中的taste 为 tasting Yesterday whe ...
- python基础-文件操作
一.文件操作 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 打开文件的模式有: r ,只读模式[默认模式,文件必须存在,不存在则抛出异 ...
- python基础 - 文件读写
完成功能: 从指定位置读文件到控制台 #! /usr/bin/python # coding=utf- 方法一. try: f = open ('/root/python/file/001.txt', ...
- python基础-文件操作(10)
一.什么是文件 等等这些都叫做文件,各种格式的.但不仅仅限制于这些. 二.文件的作用 大家应该听说过一句话:“好记性不如烂笔头”. 不仅人的大脑会遗忘事情,计算机也会如此,比如一个程序在运行过程中用了 ...
- 第3章 Python基础-文件操作&函数 文件操作 练习题
一.利用b模式,编写一个cp工具,要求如下: 1. 既可以拷贝文本又可以拷贝视频,图片等文件 2. 用户一旦参数错误,打印命令的正确使用方法,如usage: cp source_file target ...
- python基础----文件处理
一.文件处理流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 正趣果上果 Interesting fruit fruit 词:郭婞 曲:陈粒 编曲/混音/和声:燕池 萧: ...
- python基础-文件处理与函数
1. 文件处理 1.1 文件处理流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 1.2 文件读取模式r r文本模式的读,在文件不存在,不会创建新文件 f = ...
- Python基础——文件操作
写文件 writefile %%writefile ./data/testFile.txt hello python jin tian tian qi bu cuo open覆盖 txt=open(' ...
随机推荐
- 油猴ajaxhook
// ==UserScript== // @name ajaxHook // @namespace http://tampermonkey.net/ // @version 0.1 // @descr ...
- 【技术博客】 关于laravel5.1中文件上传测试的若干尝试
关于laravel5.1中文件上传测试的若干尝试 作者:ZGJ 版本:v1.0 PM注:本人这两天也正在尝试解决这一问题,如有进展将及时更新这一博客 在我们的软工第二阶段中,我开始着手进行后端控制器的 ...
- linux中高并发socket最大连接数的优化详解
linux中高并发socket最大连接数的优化详解 https://m.jb51.net/article/106546.htm?from=singlemessage
- 【Python】解析Python中函数的基本使用
1.简介 在Python中定义函数的基本格式为: def <函数名>(参数列表): <函数语句> return <返回值> Python中的函数形式比较灵活,声明一 ...
- layui中的table中toolbar自定义过程
自己挖过的坑需要自己来填. layui的table默认表头工具栏右边有3个操作,分别是过滤字段.导出excel.打印功能. 在js中代码添加toolbar即可实现上面的效果: table.render ...
- 【转】Redis哨兵(Sentinel)模式
主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用.这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式. 一.哨兵 ...
- Spring Boot入门学习,解决复杂的spring配置文件及jar包
转载:https://www.cnblogs.com/wmyskxz/p/9010832.html 总结 为何出了这样的框架? Spring Boot 是所有基于 Spring 开发的项目的起点.Sp ...
- (三)Java数据结构和算法——冒泡、选择、插入排序算法
一.冒泡排序 冒泡算法的运作规律如下: ①.比较相邻的元素.如果第一个比第二个大,就交换他们两个. ②.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.这步做完后,最后的元素会是最大的数( ...
- jmockit使用总结-MockUp重点介绍
公司对开发人员的单元测试要求比较高,要求分支覆盖率.行覆盖率等要达到60%以上等等.项目中已经集成了jmockit这个功能强大的mock框架,学会使用这个框架势在必行.从第一次写一点不会,到完全可以应 ...
- [LeetCode] 622.Design Circular Queue 设计环形队列
Design your implementation of the circular queue. The circular queue is a linear data structure in w ...