python中0o10_Python基础10—I/O编程
一、输入输出
①输入:input()
②输出:print()
1 name=input('请输入名字')2 print(name)
二、文件操作
①打开文件:文件对象=open(文件名,访问模式,buffering)
文件名:指定要打开的文件,通常需要包含路径,可以是绝对路径也可以是相对路径
buffering:可选参数,指定文件所采用的缓冲方式,buffering=0,不缓冲;buffering=1,缓冲一行;buffering>1,使用给定值作为缓冲区大小
访问模式:用于指定打开文件的模式,访问模式的参数表如下
可取值
含义
r
以读方式打开
w
以写的方式打开,此时文件内容会被前清空,如果文件不存在则会创建文件
a
以追加的模式打开,从文件末尾开始,必要时创建新文件
r+、w+
以读写模式打开
a+
追加的读写模式打开
rb
以二进制读模式打开
wb
以二进制写模式打开
rb+、wb+、ab+
以二进制读写模式打开
②关闭文件:文件对象.close()
③读取文件:
Ⅰ:str=文件对象.read([b])
可选参数[b]:指定读取的字节数,默认读取全部
Ⅱ:list=文件对象.readlines()读取的内容返回到字符串列表中
Ⅲ:str=文件对象.readline()一次性读取文件中的所有行
Ⅳ:使用in关键字:for line in 文件对象:处理行数据line
1 f=open('test.txt')2 mystr=f.read()3 f.close()4 print(mystr)5
6 f=open('test.txt')7 whileTrue:8 chunk=f.read(10)9 if notchunk:10 break
11 print(chunk)12 f.close
1 f=open('test.txt')2 mylist=f.readlines()3 print(mylist)4 f.close()5 f=open('test.txt')6 whileTrue:7 chunk=f.readline()8 if notchunk:9 break
10 print(chunk)11 f.close()
三、写入文件
①write():文件对象.write(写入的内容)
②追加写入:打开文件时可以用a或a+作为参数调用open()然后再写入
③writelines():文件对象.(seq) 用于写入字符串序列,seq是个返回字符串序列(列表、元组、集合等)
1 f=open('test.txt','a+')2 f.write('hello')3 f.close()4 f=open('test.txt')5 for line inf:6 print(line)7 f.close()
1 mylist=['hello Jack','hello Salar','hello coffee']2 f=open('test.txt','a+')3 f.writelines(mylist)4 f.close()5 f=open('test.txt')6 for line inf:7 print(line)8 f.close()
四、文件指针
①获取文件指针位置:pos=文件对象.tell() 返回的是一个整数,表示文件指针的位置,打开一个文件时文件指针的位置为0,读写文件是,文件指针的位置会移至读写的位置
②移动文件指针:文件对象.seek((offset,where))
offset:移动的偏移量,单位为字节,正数时向文件尾方向移动,负数时向文件头方向移动
where:指从哪里开始移动,0为起始位置,等于1时为当前位置移动,等于2时从结束位置开始移动
1 f=open('test.txt')2 print(f.tell())3 f.close()4 f=open('test.txt')5 f.seek(5,0)6 print(f.tell())7 f.close()
五、截断文件
文件对象.truncate([size]) 从文件头开始截断文件,size为可选参数,size字节后的文件内容将会被截断丢掉
1 f=open('test.txt','a+')2 f.truncate(5)3 f.close()4 f=open('test.txt')5 for line inf:6 print(line)7 f.close()
六、其他操作
①文件属性: 使用os模块的stat()函数一科获取文件的属性,创建时间、修改时间、访问时间、文件大小等属性(使用前要导入模块:import os)
②复制文件:使用shutil模块的copy()函数即可,函数原型为:copy(src,dst)表示为把源文件src复制为dst
③移动文件:使用shutil模块的move()函数即可,函数原型为:move(src,dst)
④重命名文件:使用os模块的rename()函数即可,函数原型为:os.rename(原文件名,新文件名)
⑤删除文件:使用os模块的remove()函数即可,函数原型为:os.remove(src)
1 importos2 importshutil3 fileStats=os.stat('test.txt')4 print(fileStats)5
6 shutil.copy('F:\\python\\book\\ch7\\test.txt','F:\\python\\book\\ch7\\test2.txt')7 shutil.move('F:\\python\\book\\ch7\\test2.txt','F:\\python\\book\\test2.txt')8 os.rename('F:\\python\\book\\test2.txt','F:\\python\\book\\test3.txt')9 os.remove('F:\\python\\book\\test3.txt')
七、目录编程
①获取当前目录:os模块的getcwd()函数
②获取目录内容:os模块的listdir()函数
③创建目录:os模块的mkdir()函数
④删除目录:os模块的rmdir()函数
1 importos2 print(os.getcwd())3 print(os.listdir(os.getcwd()))4 os.mkdir('F:\\python\\book\ch7\\he')5 os.rmdir('F:\\python\\book\ch7\\he')
python中0o10_Python基础10—I/O编程相关推荐
- Python中的匿名函数和函数式编程
Python中的匿名函数和函数式编程 文章目录 Python中的匿名函数和函数式编程 一.匿名函数 匿名函数的格式: 二.函数式编程 map() filter() reduce() 区别 三.'三目运 ...
- python中求差的函数_Python编程基础11:函数和模块
一.函数和模块概述 (一)函数概述 函数可以看成是语句的集合,通过函数调用来执行其包含的语句.函数可以返回一个计算结果,根据每次函数调用的参数,可以返回不同的计算结果.Python利用函数提高代码的重 ...
- python中0o10_Python中最常见的10个问题(列表)
列表是Python中使用最多的一种数据结果,如何高效操作列表是提高代码运行效率的关键,这篇文章列出了10个常用的列表操作,希望对你有帮助. 注意:很多人学Python过程中会遇到各种烦恼问题,没有人帮 ...
- 关于Python中的基础问题与重点语法分析
目录 一.pycharm的使用问题 二.首行缩进 三.深浅copy 四.字符编码 五.闭包函数和装饰器 身为一个python小白,在不懈的学习了快两个月python后,已经基本学完了python的 ...
- python怎么用for循环找出最大值_在for循环Python中查找前10个最大值
我试图在for循环中找到前10/300的值.我知道如何找到整个循环的最大值,但我试图计算300个值,然后只使用300个值中的前10个值.在 这是我的for循环:random.shuffle(folde ...
- [转载] Python中Numpy基础
参考链接: Python中的numpy.less numpy的功能: 提供数组的矢量化操作,所谓矢量化就是不用循环就能将运算符应用到数组中的每个元素中.提供数学函数应用到每个数组中元素提供线性代数,随 ...
- python中最基础的文件操作,你都懂吗?
今天讲一下python中的文件操作,虽然在开发中我们很少操作文件,大部分的需求基本上是在数据库中完成,因为数据库的数据更安全,操作效率高,操作文件就面临着我们需要自己管理文件,但是我们平常测试或者做一 ...
- 第十篇学会编写python代码_Python之路,第十篇:Python入门与基础10
python3 函数 函数(function) 什么是函数: 函数是可以重复执行的代码块,可以重复使用: 作用: 定义用户级的函数:实现了一个代码块的封装: 语法: def 函数名(参数列表): 语句 ...
- python中画圆的代码_Python编程12:Python画图之turtle库如何画圆
#少儿编程# 从上一篇开始,我将和小朋友们一起用Python语言来画图.turtle库是Python语言中一个很流行的绘制图像的库,上一篇我们已经知道如何使用turtle库,如何使用turtle库的函 ...
最新文章
- 一种新的高级抖动分离解析方法
- 23种设计模式C++源码与UML实现--原型模式
- boost::process::environment相关的测试程序
- 316. Remove Duplicate Letters 去除重复字母
- 设置tomcat过期缓存
- 前端跨域通信的几种方式
- java怎样访问servlet_如何访问URL并从java servlet获取响应?
- [html] table中给td设置宽度无效怎么解决?
- SpringMVC之——转发与重定向
- 1971旗舰cpu intel_AMD依然yes!官宣锐龙5000系列CPU,单核性能首次超越英特尔,苏妈:最好的游戏CPU!...
- 【OCM】Oracle OCM11g考场合影~keep人生中重要时刻
- pands 画图 调整大小_两个精品案例解释机械设计的步骤,有思路,再着手画图...
- 前端vue后台管理系统项目优化
- Win7C盘不能扩大怎么办?Win7C盘扩展卷不能点怎么解决
- 【老生谈算法】matlab实现自适应Simpson积分算法源码——积分算法
- 0.《JavaScript高级程序设计》(Nicholas C.Zakas 第3版)
- EI检索实例(相关主题、单位集体、个人)
- 北航计算机学院硕士培养方案,北航硕士研究生培养方案
- 使用away3d 精灵表实现材质动画
- 字典、集合、控制语句
热门文章
- golang.org/x/net包的安装方法
- 阿里云CentOS-7.2安装mysql
- python用线性回归预测股票价格
- Python网络编程——socket套接字实现UDP/TCP信息传输
- 大数据中,机器学习和数据挖掘的联系与区别
- VSS (Visual Source Safe 2005) 用法详解(转载)
- C#常用类库----CSV文件操作类
- C#比较两个日期的大小两种案例解析
- PRML-系列一之1.5.5~1.5.6
- 【转】前端开发必备网站