摘要:
一丶带参数的装饰器 def wrapper_out(pt): def wrapper(func): def inner(*args,**kwargs): useinput = input('请输入用户名:>>').strip() password = input('请输入密码:>>').stri 阅读全文
摘要:
day14 一丶开放封闭原则 开放原则: 增加一些额外的新功能 封闭原则: 不改变源码.以及调用方式 二丶初识装饰器 装饰器: 也可以称为装饰器函数,诠释开放封闭原则,装饰器的本质是闭包 ###普通版装饰器import timedef timmer(x): # x 接收的原函数的内存地址 def i 阅读全文
摘要:
day13 一丶内置函数Ⅱ ####内置函数#### 特别重要,反复练习####zip() 拉链函数 用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组li=[1,2,3,4]tu=('a','b','c')s='python'z=zip(li,tu,s) #把生成的迭代器赋给变量zp 阅读全文
摘要:
day12 一丶生成器 本质: 就是迭代器 生成器产生的方式: 1.生成器函数 👇 2.生成器表达式 👇 3.python内置函数或者模块提供(其实1,3两种本质上差不多,都是通过函数的形式生成,只不过1是自己写的生成器函数,3是python提供的生成器函数而已) 生成器与迭代器的区别: 生成器 阅读全文
摘要:
day11 一丶关键字:global,nonlocal global 声明全局变量: 1. 可以在局部作用域声明一个全局变量 2. 可以修改全局变量 # 解释器认为: 如果你在局部作用域对一个变量进行修改,局部作用域已经定义了好这个变量# 异常:# UnboundLocalError: local 阅读全文
摘要:
day10 一丶形参角度:*args,动态位置传参,**kwargs,动态关键字传参 *args: 动态位置参数. 在函数定义时, * 将实参角度的位置参数聚合在一起 解决实参传递多个位置参数,用*args全部接收,得到元组类型的数据 #定义一个 动态位置参数def eat(*args): prin 阅读全文
摘要:
day09 一丶函数的初识 什么函数: 函数是以功能为导向.一个函数封装一个功能 函数的优点: 1.减少代码的重复性, 2.增强了代码的可读性 二丶函数的结构 # def 关键字 定义一个函数,紧跟一个空格# new_len 函数名:函数命名规范与变量命名规范一致,函数名具有可描述性# () 结构需 阅读全文
摘要:
day08 一丶文件操作初识 ###f=open('文件名','模式',编码): #open() # 调用操作系统打开文件 #mode #对文件的操作方式 #encoding # 文件的编码格式 存储编码要统一 # f #文件句柄,操作文件的对象 f=open(1a.txt,mode='r',en 阅读全文
摘要:
1.数据类型补充 str: #字符串数据类型补充s1=str(123) #常用于类型转换print(s1)#capitalize()首字母大写 s='abc' s1=s.capitalize() print(s1) #title() 每个单词首字母大写, 需要被隔开 s2=s.title() 阅读全文
摘要:
一丶小数据池 什么是小数据池: 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址 代码块 : 一个文件, 一个模块, 一个函数 ,一个类,一个终端的每一行就是代码块 代码块的关系:如果在同一个代码块中,默认的整数和字符串还有布尔值都会进行缓存 #在python中是用字典的 阅读全文