当前位置: 首页 > news >正文

html5网站开发实例书籍哪家网站推广做的好

html5网站开发实例书籍,哪家网站推广做的好,手机网页游戏开发,巴中网站建设天仁云1 闭包与装饰器 1.1 闭包 闭包#xff08;Closure#xff09;是指在一个函数内部定义的函数#xff0c;并且该内部函数可以访问外部函数作用域中的变量。闭包可以在外部函数执行完毕后#xff0c;仍然保持对外部函数作用域的引用#xff0c;从而可以继续访问和操作外部函…1 闭包与装饰器 1.1 闭包 闭包Closure是指在一个函数内部定义的函数并且该内部函数可以访问外部函数作用域中的变量。闭包可以在外部函数执行完毕后仍然保持对外部函数作用域的引用从而可以继续访问和操作外部函数作用域中的变量。 闭包需要满足以下三个条件 外部函数嵌套内部函数 外部函数将内部函数返回 内部函数可以访问外部函数的局部变量 def f1():print(f1)i 0def f2():# nonlocal 相当于global 但是nonlocal使用的是外部函数的局部变量nonlocal ii 1print(f2, i)return f2r f1() r() 这段代码定义了一个外部函数 f1它返回内部函数 f2 的引用。在 f1 内部我们定义了一个变量 i 并将其初始化为 0。 内部函数 f2 使用 nonlocal 关键字声明了变量 i以便它可以访问和修改 f1 函数作用域中的变量 i。 当我们调用 f1() 时它返回了内部函数 f2 的引用并将外部函数作用域中的变量 i 设置为 0。我们将这个返回的函数引用赋值给变量 r。 接下来我们调用 r()实际上是调用了内部函数 f2。每次调用 r()它都会将变量 i 的值加 1然后打印出 f2 和当前的 i 值。由于 i 是外部函数作用域中的变量并且闭包可以保留对外部函数作用域的引用因此每次调用 r() 都会使用同一个 i 变量。 1.2 装饰器 装饰器Decorator是Python中一种用于修改函数或类的行为的特殊语法。装饰器可以在不修改原始函数或类代码的情况下添加额外的功能或行为。 装饰器本质上是一个函数它接受一个函数作为参数并返回一个新的函数也可以是类。这个新函数通常会包装原始函数对其进行一些额外的操作然后返回结果。 装饰器在Python中被广泛应用可以用于实现日志记录、性能统计、权限验证、缓存等各种功能。它为我们提供了一种优雅而灵活的方式来修改和扩展函数或类的行为。 步骤 定义三个基本函数编写闭包使用闭包加工原始3个函数给闭包添加权限校验函数调用 def login_required(f):def check():username input(请输入用户名)if username admin:f()else:print(用户校验失败)return checklogin_required def index():print(欢迎来到)index()login_required def cart():print(欢迎来到购物车)cart()login_required def mine():print(欢迎来到我的)mine() 这段代码定义了一个装饰器函数 login_required它接受一个函数 f 作为参数。装饰器函数内部定义了一个新的函数 check用于校验用户登录状态。 在每个被装饰的函数之前我们会调用 login_required 函数并将被装饰的函数作为参数传递给它这样就将被装饰的函数替换成了 check 函数。 当我们调用被装饰的函数时实际上是调用了 check 函数。在 check 函数内部我们首先要求用户输入用户名并进行校验。如果用户名为 admin则说明用户校验通过我们会调用原始的被装饰函数 f否则打印出 用户校验失败。 通过这样的装饰器机制我们可以在每次调用被装饰的函数之前进行用户登录的校验。 练习 随机0-1000以内的500个数字放入列表使用冒泡排序与选择排序对列表进行升序 编写装饰器 统计 两个方法的时间开销 # 导入模块 import time import random# 随机生成500个数 def get_value(n):l0 []for i in range(n):value random.randint(0, 1000)l0.append(value)return l0l1 get_value(500)# 编写装饰器 统计 两个方法的时间开销 def count(f):def count_f():time1 time.time()f()print(time.time() - time1)return count_fcount def bubble():for i in range(len(l1)):for j in range(i 1, len(l1)):if l1[i] l1[j]:l1[i], l1[j] l1[j], l1[i]return l1count def select():for i in range(len(l1)):min_value ifor j in range(i 1, len(l1)):if l1[j] l1[min_value]:min_value jl1[i], l1[min_value] l1[min_value], l1[i]return l1bubble() select() 2 内置函数 2.1 len求长度 print(len(hello)) 2.2 数学方面 2.2.1 abs 取绝对值 print(abs(-50)) 2.2.2 divmod 求整除和余 以元组形式返回第一个为整除结果第二个为求余结果 print(divmod(100, 3)) 2.2.3 pow 次方 print(pow(2, 3)) 2.2.4 round 四舍五入 print(round(3.14)) 2.2.5 sum 求和 print(sum(i for i in range(10))) 2.3 all 和any all  所有元素都是真结果就是真如果内容为空返回真 any  所有元素都是假结果就是假如果内容为空返回假 # 所有元素都为真结果就是真 如果内容为空结果为真 print(all([10, 1, True]), all([])) # 有一个为真就为真 如果内容为空就为假 print(any([10, 0, False]), any([])) 2.4 进制转换 1bin 十进制转二进制 2 hex 十进制转十六进制 3 oct 十进制转八进制 print(bin(10)) print(oct(10)) print(hex(10)) 2.5 callable 可调用函数 print(callable(10), callable(lambda x: x))2.6  ASCII码 chr 将ASCII码值转字符 ord 将字符转为ASCII码值 sorted 按照ASCII码值排序 print(chr(97), ord(A)) print(sorted(hello world)) 2.7 局部与全局 2.7.1 locals 局部 返回所有局部变量在函数内部使用 num 100 s0 hello def f():i 99result2 locals()print(result2) f()result globals() print(result) 2.7.2 globals 全局 返回全局变量 2.8 输入与输出 1input 2print a input(请输入) print(a) 2.9 最大与最小 2.9.1 max 最大 2.9.2 min最小 print(max([10,20,30])) print(max([{age: 15}, {age: 5}, {age: 25}], keylambda x: x[age])) print(min([{age: 15}, {age: 5}, {age: 25}], keylambda x: x[age])) 2.10 id 返回对象唯一标识 l0 [1, 2, 3, 4, 5] print(id(l0))2.11 将来要学习的 1delattr    删除属性 2getattr    获取属性 3hasattr    是否有属性 4setattr    设置属性
http://www.pierceye.com/news/874441/

相关文章:

  • 广州分享网站建设网站速度查询
  • 做电商网站价钱传奇类网页游戏大全
  • 如何选择南京网站建设网站制作能赚多少钱
  • 一站式网站设计已有域名如何在花生壳网站做二级域名托管
  • 哪个网站可以接图纸做返利网站怎么做的
  • 旅游网站建设国内外现状辽阳专业建设网站公司
  • 免费视频模板网站wordpress不写代码
  • 设计网站公司 露 联湖南岚鸿小程序网站开发公司
  • 聊城网站设计seo公司重庆
  • 网站布局技术厦门网站建设680元
  • 深圳物流公司网站建e网怎么做效果图
  • 做营销网站公司建个个人网站一年多少钱
  • 阆中网站网站建设代理网络服务器
  • 企业网站新模式seo排名推广工具
  • 山东做网站三五个人网页设计作品简单
  • 福州网站建设软件网站做了301怎么查看跳转前网站
  • 网站开发竞品分析网站开发与规划
  • 香山红叶建设有限公司网站网络营销方式落后的表现
  • 合肥百姓网网站建设263云通信官方网站
  • 深圳建设网站seo 手机电商数据分析师
  • 网站内外链怎么做公司建设包括哪些方面
  • 织梦网站环境搭建电子邮件怎么注册
  • 企业营销类专业网站app设计尺寸规范
  • 奈曼旗建设局网站建设旅游门户网站
  • 网站设计一般会遇到哪些问题wordpress文章关闭缩略图
  • 优质东莞网站制作公司thinkphp网站源码下载
  • 公司网站做一下多少钱最吉利旺财的公司名字
  • 网站建设维护及使用管理办法营销策划的步骤
  • 优秀网站设计案例在家开个人工作室违法吗
  • 腾讯云建设网站wordpress仿知乎社区