草庐IT

self-referencing

全部标签

python : Why is it said that variables that are only referenced are implicitly global?

来自PythonFAQ,我们可以读到:InPython,variablesthatareonlyreferencedinsideafunctionareimplicitlyglobal并且来自PythonTutorialondefiningfunctions,我们可以读到:Theexecutionofafunctionintroducesanewsymboltableusedforthelocalvariablesofthefunction.Moreprecisely,allvariableassignmentsinafunctionstorethevalueinthelocalsym

python - 在类中没有 'self' 参数的函数有什么意义?

classa:defb():...b的意义是什么谢谢classa:@staticmethoddefb():return1defc(self):b()printa.b()printa().b()printa().c()#error和classa:@staticmethoddefb():return1defc(self):returnself.b()printa.b()printa().b()printa().c()#1#1#1 最佳答案 基本上你应该使用b()作为静态方法,这样你就可以从类或类的对象中调用它,例如:bash-3.2$p

python - __init__ 函数中的 'del self.self ' 是什么意思?

我是这样看别人的代码的:classSomeClass(ParentClass):def__init__(self,attribute_1,attribute_2):self.__dict__.update(locals())delself.self我能理解第一行——向ParentClass'属性字典添加新属性。但是delself.self是什么?我试着看看self.self是什么。这正是那个self。为什么要删除其__init__函数中的对象?当我退出__init__时,我发现该对象仍然存在,地址相同。selfOut[2]:self.selfOut[3]:self.self.selfO

python - Python 类构造函数中是否有 `self.somevariable = somevariable` 的快捷方式?

Python中的构造函数通常如下所示:classSomeClass:def__init__(self,a,b=None,c=defC):self.a=aself.b=bor[]self.c=c是否有快捷方式,例如简单地定义__init__(self,**kwargs)并将键用作self的属性? 最佳答案 我见过的一个习语是self.__dict__.update(locals())。如果您在方法的开头运行它,这将使用参数更新对象的字典(因为这些是方法开头唯一的局部变量)。如果您传入**kwargs,您可以执行self.__dict_

python - “self”的 Ruby 和 Python 版本有什么区别?

我学过一些Python,但现在才开始使用Ruby我可以很好地解释这两种语言中“self”之间的区别。乍一看很明显:self在Python中不是关键字,但是无论怎么称呼都有一个“self-like”的值。Python方法将self作为显式参数接收,而Ruby则不会。Ruby有时使用点表示法将方法明确定义为self的一部分。初步谷歌搜索显示http://rubylearning.com/satishtalim/ruby_self.htmlhttp://www.ibiblio.org/g2swap/byteofpython/read/self.html 最佳答案

Python:NameError: 'self' 未定义

我一定是在做傻事。我在GoogleAppEngine中运行:classMainHandler(webapp.RequestHandler):defrender(self,template_name,template_data):path=os.path.join(os.path.dirname(__file__),'static/templates/%s.html'%template_name)self.response.out.write(template.render(path,template_data))#errorheredefget(self):self.response.

python - 元组中的方法需要显式 `self` 参数

我想了解这段代码为何有效:classMyClass(object):deff(self):print"Hello"ff=fdefg(self):self.ff()MyClass().g()虽然这不是:classMyClass(object):deff(self):print"Hello"ff=f,defg(self):self.ff[0]()MyClass().g()因为它需要一个参数self.ff[0](self):TypeError:f()takesexactly1argument(0given)是不是self.ff[0]==self.f和前面的例子self.ff==self.f一

python - Selenium3.4.0-Python3.6.1 : In Selenium-Python binding using unittest how do I decide when to use self. assertIn or assert

我正在使用Selenium3.4.0和Python3.6.1。我通过unittest模块编写了一个遵循Python文档的脚本,该模块是基于Java的JUnit的内置Python,在Windows8Pro上使用geckodriver0.16.1和MozillaFirefox57.0机器,64位操作系统,x-64处理器。在我的测试方法test_search_in_python_org()中,我有以下几行效果很好:deftest_search_in_python_org(self):driver=self.driverdriver.get("http://www.python.org")se

python - self 做什么?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Python'self'keyword如果这是一个非常菜鸟的问题,请原谅我,但我从来没有在Python中理解self。它有什么作用?当我看到类似的东西时defexample(self,args):returnself.something他们是做什么的?我想我也曾在某个函数的某处看到过args。请用简单的方式解释:P

python - "self"里面的普通函数?

我有一堆函数(在任何类之外),我在这些函数上设置了属性,比如funcname.fields='xxx'。我希望我可以使用self.fields从函数内部访问这些变量,但当然它告诉我:globalname'self'isnotdefined那么……我能做什么?我可以访问一些神奇的变量吗?喜欢__this__.fields吗?一些人问“为什么?”。您可能不同意我的推理,但我有一组函数,它们都必须共享相同的签名(只接受一个参数)。在大多数情况下,这个参数足以进行所需的计算。然而,在少数有限的情况下,需要一些额外的信息。与其强制每个函数接受一长串大部分未使用的变量,我决定只将它们设置在函数上,