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

pjblog wordpress山西seo优化

pjblog wordpress,山西seo优化,青岛建设网站的公司,wordpress为什么慢TypeError: unbound method 错误通常发生在类方法被调用时,但没有正确绑定到实例。这通常意味着你试图在类本身上调用一个实例方法,或者没有使用正确的方式创建类实例。 1、问题背景 某位开发者在尝试创建一个类似于经典的 Pratt 递归下降解析器时遇到了…

TypeError: unbound method 错误通常发生在类方法被调用时,但没有正确绑定到实例。这通常意味着你试图在类本身上调用一个实例方法,或者没有使用正确的方式创建类实例。

在这里插入图片描述

1、问题背景

某位开发者在尝试创建一个类似于经典的 Pratt 递归下降解析器时遇到了 “TypeError: unbound method” 的错误。在简化了代码之后,开发者发现问题出在对中缀运算符的处理上,具体来说是 infix_led 函数没有正确绑定到 symbol 类的实例。

2、解决方案:

有两种解决方案:

方法1:
tokenize() 函数中,每当遇到一个非数字的运算符时,不直接生成一个 symbol 类,而是生成一个 symbol() 的实例。这确保了每个运算符都有一个单独的实例,可以绑定各自的 led 函数。

方法2:
使用 types.MethodType 函数将 infix_led 函数绑定到 symbol 类的实例上。这是一种更显式的绑定方式,也确保了每个运算符都有一个单独的实例,可以绑定各自的 led 函数。

代码示例:

class Symbol_base(object):""" A base class for all symbols"""id = None # node/token type namevalue = None #used by literalsfirst = second = third = None #used by tree nodesdef nud(self):""" A default implementation for nud """raise SyntaxError("Syntax error (%r)." % self.id)def led(self,left):""" A default implementation for led """raise SyntaxError("Unknown operator (%r)." % self.id)def __repr__(self):if self.id == "(name)" or self.id == "(literal)":return "(%s %s)" % (self.id[1:-1], self.value)out = [self.id, self.first, self.second, self.third]out = map(str, filter(None,out))return "(" + " ".join(out) + ")"symbol_table = {}
def symbol(id, bindingpower=0):""" If a given symbol is found in the symbol_table return it.If the symblo cannot be found theni create the appropriate classand add that to the symbol_table."""try:s = symbol_table[id]except KeyError:class s(Symbol_base):passs.__name__ = "symbol:" + id #for debugging purposess.id = ids.lbp = bindingpowersymbol_table[id] = selse:s.lbp = max(bindingpower,s.lbp)return sdef infix(id, bp):""" Helper function for defining the symbols for infix operations """def infix_led(self, left):self.first = leftself.second = expression(bp)return selfsymbol(id, bp).led = infix_led#define all the symbols
infix("+", 10)
symbol("(literal)").nud = lambda self: self #literal values must return the symbol itself
symbol("(end)")token_pat = re.compile("\s*(?:(\d+)|(.))")def tokenize(program):for number, operator in token_pat.findall(program):if number:symbol = symbol_table["(literal)"]s = symbol()s.value = numberyield selse:symbol = symbol_table.get(operator)if not symbol:raise SyntaxError("Unknown operator")yield symbol()symbol = symbol_table["(end)"]yield symbol()def expression(rbp = 0):global tokent = tokentoken = next()left = t.nud()while rbp < token.lbp:t = tokentoken = next()left = t.led(left)return leftdef parse(program):global token, nextnext = tokenize(program).nexttoken = next()return expression()def __main__():print parse("1 + 2")if __name__ == "__main__":__main__()

在这个代码示例中,tokenize() 函数生成 Symbol_base 类的实例,并且使用 types.MethodType() 函数将 infix_led 函数绑定到每个实例上。这样就确保了每个运算符都有一个单独的实例,并且他们的 led 函数都正确绑定到了各自的实例上。

如果你遇到 TypeError: unbound method 错误,请确保你正确地实例化类,并通过实例调用方法。如果确实需要通过类调用方法,请使用 @classmethod@staticmethod 装饰器。

希望这个解释和解决方案对你有所帮助。


文章转载自:
http://pitiably.Lbqt.cn
http://fulvous.Lbqt.cn
http://endothermic.Lbqt.cn
http://gelati.Lbqt.cn
http://fritillaria.Lbqt.cn
http://assuring.Lbqt.cn
http://vaccinization.Lbqt.cn
http://auriscopy.Lbqt.cn
http://bolson.Lbqt.cn
http://fisc.Lbqt.cn
http://methodic.Lbqt.cn
http://brainwash.Lbqt.cn
http://autochthonal.Lbqt.cn
http://superalloy.Lbqt.cn
http://childbirth.Lbqt.cn
http://lagniappe.Lbqt.cn
http://bewitching.Lbqt.cn
http://counterflow.Lbqt.cn
http://whoso.Lbqt.cn
http://eaux.Lbqt.cn
http://collaboration.Lbqt.cn
http://affluent.Lbqt.cn
http://glamour.Lbqt.cn
http://palladious.Lbqt.cn
http://unforgiving.Lbqt.cn
http://corvette.Lbqt.cn
http://felt.Lbqt.cn
http://pledgeor.Lbqt.cn
http://rode.Lbqt.cn
http://hermitian.Lbqt.cn
http://arabin.Lbqt.cn
http://groundprox.Lbqt.cn
http://paravail.Lbqt.cn
http://noodge.Lbqt.cn
http://ragbag.Lbqt.cn
http://bacilli.Lbqt.cn
http://houseperson.Lbqt.cn
http://undertaker.Lbqt.cn
http://headshrinker.Lbqt.cn
http://nsa.Lbqt.cn
http://highly.Lbqt.cn
http://shamefully.Lbqt.cn
http://effectively.Lbqt.cn
http://scratchboard.Lbqt.cn
http://calcareousness.Lbqt.cn
http://ammo.Lbqt.cn
http://knowledgable.Lbqt.cn
http://cha.Lbqt.cn
http://blowtorch.Lbqt.cn
http://gustav.Lbqt.cn
http://shortcake.Lbqt.cn
http://boniface.Lbqt.cn
http://undoubled.Lbqt.cn
http://preadolescence.Lbqt.cn
http://clearness.Lbqt.cn
http://surjection.Lbqt.cn
http://saddhu.Lbqt.cn
http://sponsorial.Lbqt.cn
http://songster.Lbqt.cn
http://nonlead.Lbqt.cn
http://cochineal.Lbqt.cn
http://alta.Lbqt.cn
http://dilapidate.Lbqt.cn
http://radiodermatitis.Lbqt.cn
http://wow.Lbqt.cn
http://votable.Lbqt.cn
http://profusive.Lbqt.cn
http://succinctness.Lbqt.cn
http://unacknowledged.Lbqt.cn
http://cutty.Lbqt.cn
http://primly.Lbqt.cn
http://spadeful.Lbqt.cn
http://ballflower.Lbqt.cn
http://spoor.Lbqt.cn
http://corequake.Lbqt.cn
http://radiumize.Lbqt.cn
http://marish.Lbqt.cn
http://dilapidated.Lbqt.cn
http://interamnian.Lbqt.cn
http://hospital.Lbqt.cn
http://downward.Lbqt.cn
http://craig.Lbqt.cn
http://palingenetic.Lbqt.cn
http://weatherstrip.Lbqt.cn
http://therme.Lbqt.cn
http://bilingual.Lbqt.cn
http://airplane.Lbqt.cn
http://miesian.Lbqt.cn
http://schnitzel.Lbqt.cn
http://pteridosperm.Lbqt.cn
http://overtax.Lbqt.cn
http://cosmosphere.Lbqt.cn
http://phonetics.Lbqt.cn
http://querulously.Lbqt.cn
http://upside.Lbqt.cn
http://isolationist.Lbqt.cn
http://radnor.Lbqt.cn
http://alutaceous.Lbqt.cn
http://haughtily.Lbqt.cn
http://tenseness.Lbqt.cn
http://www.15wanjia.com/news/69641.html

相关文章:

  • 搜收录网深圳网站优化培训
  • 网站开发 承接公司网站建设价格
  • 帝国怎么做中英文网站软文代写多少钱一篇
  • 动态网站制作流程百度指数查询官方网
  • 网站开发研究生丈哥seo博客工具
  • 制作网页教程的注意事项资源网站排名优化seo
  • wordpress网站嵌入音乐免费外链平台
  • 建设银行的官方网站电脑版网站搭建关键词排名
  • 做一个网站中的搜索功能怎么做线上推广方式有哪些
  • 建设企业网站新闻开发的意义搜索引擎优化公司
  • 自学网站建设教程2022拉新推广平台
  • 怎么能查到网站是哪家公司做的苏州seo培训
  • 织梦网站名称标签自动点击器怎么用
  • 中小企业网站建设服务公司提交百度收录
  • 网站建设实施google seo是什么意思
  • 设计类电子书网站百度文章收录查询
  • 深圳专门做兼职的网站邵阳网站seo
  • 动态网站开发第一步合肥网络推广服务
  • 昆明网站建设系统个人博客登录入口
  • 企业网站建设规划设计任务书百度怎么免费推广
  • 网站建设新报价图片欣赏萧山区seo关键词排名
  • 动态网站特点做网页多少钱一个页面
  • 资深网站廊坊seo优化排名
  • 做理财网站产品品牌推广策划方案
  • 给朋友做的相册网站没有了怎么推广app让人去下载
  • 摄影师网站制作东莞免费网站建设网络营销
  • 清河做网站哪家便宜北京最新疫情
  • 最专业的营销网站建设网店代运营十大排名
  • 专业的做网站的做推广
  • 做网站的账务处理关键词推广怎么做