Python文件操作及函数
Python文件操作及函数
一、Python的文件操作:
1.1 文件操作的结构:
1、文件名(或者是文件的绝对路径)
2、操作权限(r读、w写、b以二进制的方式打开、a追加写入)
1.2 文件对象f.常用的操作方法
read() 把文件的所有内容都读取出来,返回一个字符串
write(data) 把字符串data写入到文件中,只接受字符串参数 data=”test”
readline 每次读取文件一行数据,返回每行的字符串数据 readlines 读取文件内容,返回一个list,每一行是一个元素
name() 文件名字
fileno() 文件描述符
close() 关闭文件
encoding() 文件编码
closed() 判断文件是否关闭(返回bool值:True或False)
seek(offset,whence) offset偏移量(正数向后偏移,负数向前偏移) whence(0开头 1现在位置 2结尾)
tell() 返回文件光标位置
truncate(size) 有写权限可以使用,清空文件,size表示清空到什么位置,0位清空所有,例如:truncate(1) 保留1位
1.3 实际操作列举:
读取文件内容:
读取文件必须是存在的
f = open("1.txt","r")
print(f.read())
f.close()
写入文件内容(没有中文字符时,只有英文字符):
写入文件不存在则会自动创建
f = open("1.txt","w")
print(f.write("xxxxxxxxxxxx\n yyyyyyyyyyyyyyyy\n zzzzzzzzzzzzzz"))
f.close()
写入文件内容(存在中文字符):
存在中文字符时,需要在后面加上encoding=”utf-8” 指定编码类型,否则会显示为乱码。
f = open("3.txt","a",encoding="utf-8")
print(f.write("\n我打飞机啊时空裂缝就奥斯卡砥砺奋进上课了就"))
f.close()
为了日后维护代码修改方便,可以使用全局申明:
注意:全局申明要使用的所有字母都必须大写
NCODEING = "utf-8"
f = open("3.txt","w",encoding=ENCODEING)
f.write("\n发送到发上分大神")
f.close()
追加写入文件内容:
f = open("2.txt","a")
print(f.write("\n6666666666"))
f.close()
readline和readlines用法的区别:
readline 举例:
f = open("3.txt","r",encoding=ENCODEING)
print(f.readline())
print(f.readline())
print(f.readline())
print(f.readline())
print(f.readline())
print(f.readline())
f.close()
readlines 举例:
f = open("3.txt","r",encoding=ENCODEING)
print(f.readlines())
f.close()
从上面的结果输出结果对比,可以看出:
readline是每次读取文件一行数据,返回每行的字符串数据;
readlines是读取文件所有内容,返回一个list,每一行是一个元素
我们也可以使用for循环使用readlines打印每行字符串数据,enumerate打印行号;实现如readline每次只读一行数据的效果:
f = open("3.txt","r",encoding=ENCODEING)
for i,line in enumerate(f.readlines()):print("第{0}行内容: {1}".format(i,line))
f.close()
1.4 with as的用法:
在上面的读写操作后,我们每次都需要使用.close()来关闭文件显得特别麻烦。
而我们可以使用with as实现同样的效果,如下面2个举例编写:
with open("1.txt","r") as f:
print(f.read())
import codecs
with codecs.open("3.txt","r",encoding="utf-8") as f:print(f.read())
二、函数:
1.1 函数的介绍:
函数就是一种封装的思想,把细小的功能或者可以缩小的功能封装成一种函数。
函数定义(申明): 以关键字 def开头,函数名,参数: 回车缩进
def function(arg1,arg2,...):pass
函数的调用:
函数名直接插入参数
function(1,2,3)
arg1 ,arg2 形参(list、dict等的参数)
1,2,3 实参(实际值的参数)
1.2 函数中*args **kwargs用法:
def fun(*args **kwargs):pass
举例如下:
fun(1,2,3,4,5,a=1,b=2)
a = 1
args = 2,3,4,5 list 一一对应
kwargs = {"a":1,"b":2} dict 一一对应
解析:
a 代表实际数
*args 代表list
**kwargs 代表dict
1.3 匿名函数:
匿名函数的格式:
lambda x,y: x+y
举例,两数相加:
add = lambda x,y: x+y
一般不建议适用匿名函数,建议使用如下,意思与匿名函数一样:
def add(x,y):return x+y
Python文件操作及函数相关推荐
- Python文件操作与函数目录
文件操作 python文件操作 函数 Python函数学习--初步认识 Python函数学习--作用域与嵌套函数 Python函数学习--匿名函数 python内置函数 Python函数学习--递归 ...
- load()是python文件操作的函数_python基础总结(函数,文件操作)
divmod(a, b)#分别取商和余数 float([x])#将一个字符串或数转换为浮点数.如果无参数将返回0.0 int([x[, base]])#将一个字符转换为int类型,base表示进制 l ...
- python2与pyrhon3的区别,python—文件操作,函数练习题
练习题 文件处理相关 编码问题 请说明python2 与python3中的默认编码是什么? 为什么会出现中文乱码?你能列举出现乱码的情况有哪几种? 如何进行编码转换? #-*-coding:utf-8 ...
- load()是python文件操作的函数_Python 文件读写
              预备知识 Python 入门 学习处理文件和保存数据可让你的 ...
- load()是python文件操作的函数_python深入(函数,文件操作)
一.内建函数 1.数学运算类 abs(x)#求绝对值 divmod(a, b)#分别取商和余数 float([x])#将一个字符串或数转换为浮点数.如果无参数将返回0.0 int([x[, base] ...
- Python开发【第三篇】:文件操作与函数
内容概要 文件操作 初始函数 函数定义与调用 函数的返回值 函数的参数 函数进阶 函数参数--动态传参 名称空间 作用域 函数的嵌套 函数名的运用 gloabal,nonlocal 关键字 1.文件操 ...
- 初学Python——文件操作第二篇
前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...
- python关闭读写的所有的文件-Python文件操作:文件的打开关闭读取写入
Python文件操作:文件的打开关闭读取写入 一.文件的打开关闭 Python能以文本和二进制两种方式处理文件,本文主要讨论在Python3中文本文件的操作. 文件操作都分为以下几个步骤: 1.打开文 ...
- Python文件操作学习总结
Python读写文件 1.open 使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open( ...
- python文件操作实验总结,[干货分享]Python文件操作技巧总结
引言 小伙伴们,今天给大家讲解一下python程序下的文件操作完整技巧梳理,都是笔者总结的干货.通过本文阅读,不仅可以带来生产力提升,也可以开发小脚本为生活带来乐趣. 首先不知道大家对 ...
最新文章
- WorldWind源码剖析系列:外包围盒类BoundingBox和外包围球类BoundingSphere
- 使用jupyter notebook连接服务器进行远程写代码
- Android 上滑背景变淡,在Android中,如何平滑地将背景从一种颜色淡化到另一种颜色? (如何使用线程)...
- LPVOID是一个没有类型的指针
- ArcGIS 10.2.2利用Anaconda集成scipy和pandas
- 知乎回应月饼问题:忽略了麦芽糖或致部分人不耐受,召回所有月饼
- 德鲁克谈《自我管理》笔记摘要
- 苹果支付在哪里设置_你会用苹果手机吗?这些快捷指令快速设置一下,好用度提升10倍...
- 算法笔记.胡凡 第11章 动态规划专题
- 明翰经验系列之管理篇V1.1(持续更新)
- 脱贫攻坚“甜蜜行”基层医生培训班第二期在怀化举办,3市共50名村医参加
- Microsoft Office 2007不能安装的原因
- sqlserver数据库安全
- 淘宝开源的代码质量检测工具,真强啊~
- 西安100w就可以财务自由?靠工资如何崛起!
- 微信6.5.10版 android,安卓版微信6.5.10版发布:这些新功能你都知道么?
- JavaScript 动态获取ajax 自动刷新接口内容
- 开发工具:2022个人开发工具清单
- HTML5文本框怎么透明,css怎么设计文本框透明度
- 斐波那契数列----有一段楼梯有n级台阶,规定每一步只能跨一级或两级,要登上第n级台阶有几种不同的走法?...