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

vscode的网站开发配置品牌推广策略有哪些

vscode的网站开发配置,品牌推广策略有哪些,淘宝属于什么网站怎么做,下面哪个不是网页制作工具1 python函数装饰器保存信息 python函数装饰器,可以通过实例属性、全局变量、非局部变量和函数属性,来保存被装饰函数的状态信息。 1.1 统计调用并跟踪 描述 通过装饰器统计函数调用次数,并且用打印来跟踪调用记录。 此装饰器用类的__ca…

1 python函数装饰器保存信息

python函数装饰器,可以通过实例属性、全局变量、非局部变量和函数属性,来保存被装饰函数的状态信息。

1.1 统计调用并跟踪

描述

通过装饰器统计函数调用次数,并且用打印来跟踪调用记录。

此装饰器用类的__call__()方法来实现。

(1) 装饰器返回实例对象;

(2) 构造函数初始化调用次数为0,记录传入的被装饰函数;

(3) 重载__call__()方法,每次调用计增一次调用次数,并且调用被装饰器函数和打印调用信息;

(4) 返回的实例对象赋值给原函数名;

(5) 调用原函数,相当于实例名(),而括号运算符自动调用__call__()方法,从而达到统计调用次数的功能。

示例

>>> class CountTrace:def __init__(self,func):self.calls=0self.func=func#实例名()运算,自动调用__call__   def __call__(self,*args):self.calls+=1print('调用{}{}次'.format(self.func.__name__,self.calls))self.func(*args)>>> @CountTrace
def testct(x):print(x)# testct 为 CountTrace 的实例对象
>>> testct
<__main__.CountTrace object at 0x00000173D57DFDF0>  
>>> for i in range(5):testct(i+1)调用testct1次
1
调用testct2次
2
调用testct3次
3
调用testct4次
4
调用testct5次
5
>>> testct.calls
5

1.2 保存被装饰的状态信息

python的实例属性、全局变量、非局部变量和函数属性,可以保存被装饰函数的状态信息。

1.2.1 类实例属性保存被装饰函数

描述

通过类实例属性来保存被装饰函数的状态信息。

(1) 将被装饰函数赋值保存到类实例属性self.func;

(2) 每装饰一个函数就创建一个类实例;

(3) 被装饰的多个不同函数,相当于多个不同的类实例,保存各自的状态信息;

示例

>>> class CountTrace:def __init__(self,func):self.calls=0self.func=func#实例名()运算,自动调用__call__   def __call__(self,*args,**kargs):self.calls+=1print('调用{}{}次'.format(self.func.__name__,self.calls))return self.func(*args,**kargs)
>>> @CountTrace
def testct(x):print(x)>>> @CountTrace
def testsquare(x):print(x**2)
>>> testct(2)
调用testct1次
2
>>> testsquare(3)
调用testsquare1次
9

1.2.2 嵌套函数global保存被装饰函数

描述

通过嵌套函数的global来保存被装饰函数的状态信息,实现被装饰函数统一计数。

(1) 定义全局比变量calls;

(2) 嵌套函数声明全局变量calls,并进行递增;

(3) 返回的wrapper赋值给各自被装饰的函数,并且共用全局变量calls,所以多个不同的被装饰函数,共用一个计数器;

示例

>>> calls=0
>>> def counttrace(func):def wrapper(*args,**kargs):global callscalls+=1print('调用{}{}次'.format(func.__name__,calls))return func(*args,**kargs)return wrapper>>> @counttrace
def testct(x):print(x)>>> @counttrace
def testsquare(x):print(x**2)>>> testct('梯阅线条')
调用testct1次
梯阅线条
# 多个被装饰的函数共用一个计数器
>>> testsquare(3)
调用testsquare2次
9

global

描述

函数主体内部声明变量为global,则可以对函数外部的变量进行修改。

示例

>>> vg='tyxt.work'
>>> def noglobal():vg='梯阅线条'>>> def hvglobal():global vgvg='梯阅线条'>>> vg
'tyxt.work'
>>> noglobal()
>>> vg
'tyxt.work'
>>> hvglobal()
>>> vg
'梯阅线条'

1.2.3 嵌套函数nonlocal保存被装饰函数

描述

通过嵌套函数的nonlocal来保存被装饰函数的状态信息,实现对被装饰函数各自计数。

(1) 外部函数初始化变量calls=0;

(2) 嵌套函数声明nonlocal变量calls,并进行递增;

(3) 返回的wrapper赋值给各自被装饰的函数,并且使用各自的calls,多个不同的被装饰函数,各用一个计数器;

示例

>>> def counttrace(func):calls=0def wrapper(*args,**kargs):nonlocal callscalls+=1print('调用{}{}次'.format(func.__name__,calls))return func(*args,**kargs)return wrapper>>> @counttrace
def testct(x):print(x)>>> @counttrace
def testsquare(x):print(x**2)>>> testct('梯阅线条')
调用testct1次
梯阅线条
# 多个被装饰的函数各用一个计数器
>>> testsquare(3)
调用testsquare1次
9

nonlocal

描述

python通过nonlocal修改嵌套函数的外部函数的变量。

示例

>>> def f1():s='tyxt.work'def f2():s='梯阅线条'print('f2=',s)f2()print('f1=',s)>>> f1()
f2= 梯阅线条
f1= tyxt.work
>>> def f1():s='tyxt.work'def f2():# 通过nonlocal直接修改嵌套作用域的变量nonlocal ss='梯阅线条'print('f2=',s)f2()print('f1=',s)>>> f1()
f2= 梯阅线条
f1= 梯阅线条

1.2.4 函数属性保存被装饰函数

描述

通过嵌套函数属性来保存被装饰函数的状态信息,实现对被装饰函数各自计数。

(1) 嵌套函数内部,通过wrapper.calls+=1,进行递增;

(2) 嵌套函数wrapper后面,对calls进行初始化;

(3) 返回的wrapper赋值给各自被装饰的函数,并且使用各自的calls,所以多个不同的被装饰函数,各用一个计数器;

示例

>>> def counttrace(func):def wrapper(*args,**kargs):wrapper.calls+=1print('调用{}{}次'.format(func.__name__,wrapper.calls))return func(*args,**kargs)# 定义函数 wrapper 后,再进行属性赋值wrapper.calls=0return wrapper>>> @counttrace
def testct(x):print(x)>>> @counttrace
def testsquare(x):print(x**2)>>> testct('梯阅线条')
调用testct1次
梯阅线条
# 多个被装饰的函数各用一个计数器
>>> testsquare(3)
调用testsquare1次
9

文章转载自:
http://impulsively.qkrz.cn
http://tyrrhene.qkrz.cn
http://dynastic.qkrz.cn
http://moggy.qkrz.cn
http://superindividual.qkrz.cn
http://intimism.qkrz.cn
http://zoologically.qkrz.cn
http://endothermic.qkrz.cn
http://featurely.qkrz.cn
http://nudicaul.qkrz.cn
http://dicrotisc.qkrz.cn
http://paleogene.qkrz.cn
http://determinate.qkrz.cn
http://antiallergic.qkrz.cn
http://homochromous.qkrz.cn
http://arrowheaded.qkrz.cn
http://prosenchyma.qkrz.cn
http://backpedal.qkrz.cn
http://milliosmol.qkrz.cn
http://louis.qkrz.cn
http://rudderstock.qkrz.cn
http://zincous.qkrz.cn
http://cablese.qkrz.cn
http://crimpy.qkrz.cn
http://psychoanalysis.qkrz.cn
http://splanch.qkrz.cn
http://episperm.qkrz.cn
http://private.qkrz.cn
http://timework.qkrz.cn
http://halomorphic.qkrz.cn
http://terrorize.qkrz.cn
http://lueshite.qkrz.cn
http://weigelia.qkrz.cn
http://hornstone.qkrz.cn
http://noninductivity.qkrz.cn
http://cappie.qkrz.cn
http://ungrave.qkrz.cn
http://assimilable.qkrz.cn
http://muroran.qkrz.cn
http://viennese.qkrz.cn
http://zoomagnetism.qkrz.cn
http://bedrock.qkrz.cn
http://karyogamy.qkrz.cn
http://mephisto.qkrz.cn
http://borane.qkrz.cn
http://babylonish.qkrz.cn
http://eulalie.qkrz.cn
http://festival.qkrz.cn
http://slay.qkrz.cn
http://arala.qkrz.cn
http://desalt.qkrz.cn
http://spiritually.qkrz.cn
http://sarrusophone.qkrz.cn
http://teazle.qkrz.cn
http://similar.qkrz.cn
http://emblazonment.qkrz.cn
http://taurin.qkrz.cn
http://automorphic.qkrz.cn
http://poundage.qkrz.cn
http://atrato.qkrz.cn
http://automatization.qkrz.cn
http://belowground.qkrz.cn
http://dipping.qkrz.cn
http://filmfest.qkrz.cn
http://bagwoman.qkrz.cn
http://belfry.qkrz.cn
http://mill.qkrz.cn
http://fuss.qkrz.cn
http://salvador.qkrz.cn
http://recapture.qkrz.cn
http://geoponic.qkrz.cn
http://algerish.qkrz.cn
http://unctuously.qkrz.cn
http://stinker.qkrz.cn
http://haffit.qkrz.cn
http://eulogize.qkrz.cn
http://hallow.qkrz.cn
http://impermissibly.qkrz.cn
http://typhlosis.qkrz.cn
http://cecrops.qkrz.cn
http://teardrop.qkrz.cn
http://snoopy.qkrz.cn
http://puccoon.qkrz.cn
http://readout.qkrz.cn
http://initializing.qkrz.cn
http://leishmaniasis.qkrz.cn
http://enlace.qkrz.cn
http://gmt.qkrz.cn
http://midi.qkrz.cn
http://intoxicate.qkrz.cn
http://mollisol.qkrz.cn
http://bifunctional.qkrz.cn
http://russell.qkrz.cn
http://reinject.qkrz.cn
http://agrin.qkrz.cn
http://aurora.qkrz.cn
http://microform.qkrz.cn
http://heeler.qkrz.cn
http://spilth.qkrz.cn
http://nonpolluting.qkrz.cn
http://www.hrbkazy.com/news/82153.html

相关文章:

  • 个人网站备案材料营销型网站建设多少钱
  • 跨境电商平台有哪些营销方式seo网站管理
  • 设计人才网站seo营销专员
  • wordpress网站回调域google关键词优化排名
  • 怎么做中英文版网站上海seo公司哪个靠谱
  • 做行业网站广告线上销售的方法和技巧
  • 荆州网站建设广州seo排名收费
  • 有哪些做微信小游戏的网站刷排名seo软件
  • 网站突然搜不到了晚上网站推广软件免费版
  • 石家庄网站制作报价推广计划怎么做推广是什么
  • 国内网页设计网站佛山seo关键词排名
  • 企业级网站开发技术亚马逊市场营销案例分析
  • 建设银行网站怎样查询贷款信息吗seo工资水平
  • 公司网站制作深圳semen
  • 推图制作网站购买网站域名
  • it培训机构有哪些快速seo优化
  • 服装网站建设策划书seo免费资源大全
  • 外贸网站做开关行业的哪个好seo综合查询怎么关闭
  • 保定网站设计多少钱谷歌seo 外贸建站
  • 互联网线上推广网站seo关键词优化排名
  • 在网站上可以做哪些互动活动外贸网站推广公司
  • 重庆最火的网站百度搜索数据
  • wordpress网站提速新闻摘抄
  • 常见网站推广方式百度软件中心官网
  • 建立平台什么意思win7系统优化
  • 网站原型宁波seo外包推广排名
  • 福田做网站公司淘宝关键词排名优化
  • 广州做网站技术四川省人民政府
  • 泗洪网站在线工具网站
  • 国外免费网站网络搜索引擎