python 数据类型 ---文件一
1.文件的操作流程: 打开(open), 操作(read,write), 关闭(close)
下面分别用三种方式打开文件,r,w,a 模式 . "a"模式将不会覆盖原来的文件内容, 会以追加的形式写入。
f=open("file1.txt","r",encoding="utf-8") # 默认以 "r" 模式打开
f=open("file2.txt","w",encoding="utf-8")
f=open("file3.txt","a",encoding="utf-8")
2. read, readline, readlines
(1) read() 一次性读出所有文件内容, 并且只能读一次
(2) readline() 一行一行读出文件的内容
(3)readlines() 将以列表的形式读出来
3.高效遍历文件内容, 并在第10行插入一行指定内容
f = open("lyric.txt","r",encoding="utf-8")
count = 0
for line in f:
if count == 9:
print("------------------我是分割线-------------------")
count += 1
continue
print(line.strip())
count +=1
4.tell(), seek() 属性
tell() 打印光标所在的位置
seek(数字) 回到“数字” 所示的光标位置
# example
f = open("lyric.txt","r",encoding="utf-8")
print(f.tell()) # 打印光标所在的位置
print(f.readline())
print(f.readline())
print(f.readline())
print(f.tell())
f.seek(0) #回到最初的索引地方
print(f.readline())
5. f.truncate(20)
truncate 方法必须是以"a" 模式打开, 从文件开头开始截断 20 个字符
6. flush 用法 ,可以实时刷新新的内容到硬盘
>>> f = open("test.txt","w")
>>> f.write("this is just for testt\n")
22
>>> f.flush()
7. 文件的修改, 将文件file1 特定行修改后, 写到另一文件中file1_new
思路:读写文件分离, 读一行,写一行, 当遇到特定的行, 利用字符串replace 替换
f = open('lyric.txt','r',encoding="utf-8")
f_new = open('lyric_modify.txt','w',encoding="utf-8")
for line in f:
if line.strip() == "我的梦":
# print(repr(line))
#if "我的梦" in line:
line = line.replace("我的梦","Frank's dream")
f_new.write(line)
else:
f_new.write(line)
f.close()
f_new.close()
8. 文件的修改进阶---将参数1 修改为参数2
import sys
f = open("lyric.txt","r",encoding="utf-8")
f_new = open("lyric_2.txt","w",encoding="utf-8")
origi_str = sys.argv[1]
replace_str = sys.argv[2]
for line in f:
if origi_str in line:
line = line.replace(origi_str,replace_str)
f_new.write(line)
f.close()
f_new.close()
python 数据类型 ---文件一的更多相关文章
- python 数据类型---文件二
1.打印进度条 import sys,time for i in range(20): sys.stdout.write("#") sys.stdout.flush() #不等缓冲 ...
- Python基础--文件操作和集合
这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件file.txt: 我们哭了 ...
- Python数据类型解析(基础篇)
Python语言的类型 数字类型 字符串类型 元组类型 列表类型 文件类型 字典类型 1.数字类型 Python有三种数字类型:整数,浮点数,复数 Python中的整 ...
- Python 中文件操作
上代码: import os import os.path rootdir = "d:/code/su/data" # 指明被遍历的文件夹 for parent,dirnames, ...
- PYTHON 100days学习笔记007-1:python数据类型补充(1)
目录 day007:python数据类型补充(1) 1.数字Number 1.1 Python 数字类型转换 1.2 Python 数字运算 1.3 数学函数 1.4 随机数函数 1.5 三角函数 1 ...
- PYTHON数据类型(进阶)
PYTHON数据类型(进阶) 一.字符串.列表.字典.元祖.集合的补充 str #captalize 首字母大写,其余小写 s1.capitalize() #swapcase 大小写翻转 s1.swa ...
- PYTHON数据类型(基础)
PYTHON数据类型(基础) 一.列表.字典.元祖.集合的基本操作 列表 创建 l1=[] l1=list() l1=list(['你好',6]) 增 l1.append('hu') l1.inser ...
- Python数据类型方法整理
前言:主要是对Python数据类型做一个整理,部分知识点源于<python3程序开发指南(第二版)> 一.Python的关键要素 1.1 要素1:数据类型 int类型 str类型 ...
- 第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出
第三节 简单的Python数据类型.变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装.WINDOWS系列Python编辑和 ...
随机推荐
- 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!
看完SQL Server 2014 Q/A答疑集锦:想不升级都难! 转载自:http://mp.weixin.qq.com/s/5rZCgnMKmJqeC7hbe4CZ_g 本期嘉宾为微软技术中心技术 ...
- 通俗易懂的来讲讲DOM
DOM是所有前端开发每天打交道的东西,但是随着jQuery等库的出现,大大简化了DOM操作,导致大家慢慢的“遗忘”了它的本来面貌.不过,要想深入学习前端知识,对DOM的了解是不可或缺的,所以本文力图系 ...
- 03.LoT.UI 前后台通用框架分解系列之——多样的表格
LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...
- 了不起的 nodejs-TwitterWeb 案例 bug 解决
了不起的nodejs算是一本不错的入门书,不过书中个别案例存在bug,按照书中源码无法做出和书中相同效果,原本兴奋的心情掺杂着些许失落. 现在我们看一下第七章HTTP,一个Twitter Web客户端 ...
- WebApi接口 - 如何在应用中调用webapi接口
很高兴能再次和大家分享webapi接口的相关文章,本篇将要讲解的是如何在应用中调用webapi接口:对于大部分做内部管理系统及类似系统的朋友来说很少会去调用别人的接口,因此可能在这方面存在一些困惑,希 ...
- 12、Struts2表单重复提交
什么是表单重复提交 表单的重复提交: 若刷新表单页面, 再提交表单不算重复提交. 在不刷新表单页面的前提下: 多次点击提交按钮 已经提交成功, 按 "回退" 之后, 再点击 &qu ...
- Shell碎碎念
1. 字符串如何大小写转换 str="This is a Bash Shell script." 1> tr方式 newstr=`tr '[A-Z]' '[a-z]' < ...
- 解决“chrome提示adobe flash player 已经过期”的小问题
这个小问题也确实困扰我许久,后来看到chrome吧里面有人给出了解决方案: 安装install_flash_player_ppapi, 该软件下载地址:http://labs.adobe.com/do ...
- Android中BroadcastReceiver的两种注册方式(静态和动态)详解
今天我们一起来探讨下安卓中BroadcastReceiver组件以及详细分析下它的两种注册方式. BroadcastReceiver也就是"广播接收者"的意思,顾名思义,它就是用来 ...
- 手动导入swift三方danielgindi/Charts到OC工程中教程
1.到github网址上下载zip压缩包https://github.com/danielgindi/Charts 2.然后将解压后的文件夹整个拖到自己的工程文件夹下(很多教程只让拖xcodeproj ...