Python基础—闭包和文件

   期末笔记后期整理,如有问题,请多多指教。


一、闭包

1、三个条件:

      ①存在于嵌套关系的函数中;

      ②嵌套的内部函数引用了外部函数的变量;

      ③嵌套的外部函数会将内部函数名作为返回值返回。

def outer(start=0):
      count=[start]
      def inner():
         count[0]+=1
         return count[0]
      return inner
quote=outer(5)
print(quote())

2、常见的内置函数

      ①map函数

         map(function,iterable,...)#当调用map函数时,iterable中的每个元素都调用function,返回结果保存到迭代器对象中。

func=lambda x:x+2
result=map(func,[1,2,3,4,5])
print(list(result))

         若调用map函数时传入function参数为None,则相当于将序列中对应位置的元素合并成元组。

      ②filter函数(对指定序列执行过滤操作)

         filter(function,iterable)#迭代器中的每个参数元素分别调用function,最后返回迭代器包含的调用结果为True的元素。

         function返回值为布尔值,可为None。

func=lambda x:x%2
result=filter(func,[1,2,3,4,5])
print(list(result))

      ③reduce函数(对迭代器的元素进行累积)

         reduce(function,iterable[,initializer])

         function带两个参数,不能为None,initializer为初始值

from functools import reduce
func=lambda x,y:x+y
result=reduce(func,[1,2,3,4,5])
print(result)

二、文件

1、文件的打开:open(文件名[,访问模式])

r读(默认)rb r+读写rb+ 
wwb w+读写wb+ 
a追加ab a+读写ab+ 

 

 

 

 

file=open('test.txt',w+)

2、文件的关闭

file.close()

3、写文件

file.write('hello')#若文件存在,清空所有数据,重新写入

4、读文件

file.read([size])#返回字符串,可指定长度


file.readlines()#返回列表,每个元素为文件的每一行


file.readline()#一行一行地读,返回字符串

5、文件的定位读写

     ①tell方法(获取文件当前的读写位置)

words=file.read(5)
position=file.tell()
print(position)

    ②seek方法(定位到文件的指定读写位置)

       seek(offset[,whence])#偏移量,方向

         SEEK_SET或0:起始(默认)

         SEEK_CUR或1:当前

         SEEK_END或2:末尾

file.seek(5)#访问模式rb+指针位置可动,r不可

6、文件的重命名和删除:os模块

os.rename(src,dst)
os.remove(path)

7、文件夹的相关操作

os.mkdir("aa")#创建
os.getcwd()#获取当前目录
os.chdir("../")#改变默认目录
os.listdir("./")#获取目录列表
os.rmdir("aa")#删除

8、with语句

#当对文件的操作结束后,with语句会关闭文件
with open("test.txt") as file:
   data=file.read()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的公寓报修管理系统,源码+数据库+毕业论文+视频演示 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本公寓报修管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此公寓报修管理系统利用当下成熟完善的Spring Boot框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。公寓报修管理系统有管理员,住户,维修人员。管理员可以管理住户信息和维修人员信息,可以审核维修人员的请假信息,住户可以申请维修,可以对维修结果评价,维修人员负责住户提交的维修信息,也可以请假。公寓报修管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 关键词:公寓报修管理系统;Spring Boot框架;MySQL;自动化;VUE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值