[python自学笔记]匿名函数和文件处理、异常
2017-10-23 20:07
609 查看
1、lambda表达式就是一个匿名函数,在python中的lambda表达式的写法就是lambda+空格+参数列表+冒号+返回值。比如lambda x,y:x+y就相当于如下的代码
2、在python的函数中还可以把匿名函数作为参数来使用,这个和JavaScript有异曲同工之妙,比如
3、文件处理
首先说几个英文,read(读)、write(写),bit(二进制),append (追加)
3.1、文件的打开:
filename是文件路径,type是打开方式,”r”,”w”,”a”,”rb”,”wb”,”ab”,”r+”,”w+”等等,r代表读,且文件指针指向开头,并且文件必须存在,不存在就会报异常,w代表写,文件指针指向开头,文件不存在的话会创建一个,a代表文件指针指向最后追加内容。带加号的代表可读可写。
3.2、文件的关闭:
3.3、文件的读写:
3.4、改变文件的文件指针
3.5、其它文件操作,需要
4、异常 (在Java叫Exception,java的处理方式是try…catch…finally,python是try…except…finally)
比如说只读打开一个文件,文件不存在,会报FileNotFoundError异常,为了捕捉异常,应该采取下面的写法
抛出异常的关键字是raise,在java中是throw。Exception是所有异常的类的父类,这个和Java一样。
def sum(x,y): return x + y
2、在python的函数中还可以把匿名函数作为参数来使用,这个和JavaScript有异曲同工之妙,比如
def test(a,b,func): result = func(a,b) return result def main1(): nums = [{"name":"zhangs","age":20},{"name":"wzhangs","age":30},{"name":"2zhangs","age":2}] nums.sort(key=lambda x:x['age']) print(nums) def main(): nums = test(10,20,lambda x,y:x+y) print(nums) if __name__ == '__main__': main()
3、文件处理
首先说几个英文,read(读)、write(写),bit(二进制),append (追加)
3.1、文件的打开:
f = open(filename,type)
filename是文件路径,type是打开方式,”r”,”w”,”a”,”rb”,”wb”,”ab”,”r+”,”w+”等等,r代表读,且文件指针指向开头,并且文件必须存在,不存在就会报异常,w代表写,文件指针指向开头,文件不存在的话会创建一个,a代表文件指针指向最后追加内容。带加号的代表可读可写。
3.2、文件的关闭:
f.close()
3.3、文件的读写:
f = open("test.py","r") t1 = f.read(2)//读两个 t2 = f.read(3)//从上面读两个的基础上再读3个 t2 = f.readline() //读一行 t3 = f.read() //从上面的基础上把所有的 a658 都读出来
f = open("test.py","w") num = f.write("hello\nworld") // 向文件写一个字符串,并把长度返回
3.4、改变文件的文件指针
filename = "d:/demo.py" type = "r" f = open(filename,type) f.seek(2,0) // 第二个参数为0代表文件开头,1代表当前位置,2代表文件结尾 第一个参数代表偏移量,正数是往右,负数反之,但是python3不支持负数 content = f.readline() print(content) position = f.tell() // 返回文件指针的位置 print(postion)
3.5、其它文件操作,需要
import os
rename(oldname,newname) //重命名 remove(filename) //删除文件 mkdir(dirName) //创建文件夹 rmdir(dirName) //删除文件夹 getcwd() //获取当前工作目录 chdir(dirName) //改变当前目录,以下所有代码的当前目录就是这个目录了 listdir('./') //返回目录列表
4、异常 (在Java叫Exception,java的处理方式是try…catch…finally,python是try…except…finally)
比如说只读打开一个文件,文件不存在,会报FileNotFoundError异常,为了捕捉异常,应该采取下面的写法
try: filename = "d:/demo.py" type = "r" f = open(filename,type) except FileNotFoundError as fnfr: print("文件不存在") finally: print("hello")
抛出异常的关键字是raise,在java中是throw。Exception是所有异常的类的父类,这个和Java一样。
相关文章推荐
- python笔记(十) - 异常和文件处理
- 《Head First Python》笔记 第三章 文件与异常
- Python3.3 学习笔记5 - 异常处理
- Python学习笔记--异常处理
- python 系统学习笔记(九)---异常处理
- Python学习笔记三(文件与异常)
- python的文件操作与异常处理
- python 系统学习笔记(九)---异常处理
- [Head First Python]3. 文件与异常:处理错误
- Python 学习笔记 (3)—— python异常处理
- Python笔记–IAR使用Python脚本实现自动对烧录文件进行处理
- Python学习笔记---模块;文件与文本处理
- python学习笔记2 Python文件处理
- 利用Python处理文件并注意异常(1)
- python学习笔记(四):异常情况处理
- python学习笔记2 Python文件处理
- python 学习笔记(10)重构与文件处理
- Java自学笔记(第十天)-异常-异常的处理-throws-throw-多异常处理-自定义异常-throwable类-RunTimeException类-finally-异常在方法继承中的注意事项-
- python笔记 - 异常处理中的END_FINALLY指令
- Python学习笔记(4)--异常处理