【python – 为什么这个类运行?】教程文章相关的互联网学习教程文章

通过命令行将值传入Python类【代码】

我有一些代码可以从命令行将变量传入脚本.我可以将任何值传递给var arg的函数.问题是,当我将函数放入类中时,变量不会被读入函数.该脚本是:import sys, osdef function(var):print varclass function_call(object):def __init__(self, sysArgs):try:self.function = Noneself.args = []self.modulePath = sysArgs[0]self.moduleDir, tail = os.path.split(self.modulePath)self.moduleName, ext = os.path.splitext(tail)__import_...

python – 类继承:构造函数应该兼容吗?多重继承的情况?

参见英文答案 > Should constructors comply with the Liskov Substitution Principle? [closed] 3个recommended principles of object-oriented programming中的一个是Liskov substitution principle:子类的行为应该与它的基类相同(警告:这实际上不是Liskov原理的正确描述:参见PS). 是否建议它也适用于构造函数?我主要考虑Python及其__init __()方法,但这个问题适用于任何具有继承的面向对...

Python类对象和XML【代码】

是否可以根据XML文件的层次结构内容自动生成python类对象?让我解释一下我的意思.假设我有一个XML文件,其中包含(为简单起见)以下内容:<breakfast_menu><food><name>Belgian Waffles</name><price>$5.95</price><description>blah blah...etc...</description><calories>650</calories></food> </breakfast_menu>我喜欢XML呈现数据和属性的方式,但我想使用Python,所以我问是否有一组实用程序可以读取上面的文件并创建类似于:class...

第8.3节 Python类的__init__方法深入剖析:构造方法与继承详解【图】

第8.3节 Python类的__init__方法深入剖析:构造方法与继承详解 一、 引言 上两节介绍了构造方法的语法及参数,说明了构造方法是Python的类创建实例后首先执行的方法,并说明如果类没有重写构造方法,Python将会给出默认的__init__方法。上述介绍适用于自定义类没有自定义父类的情况,如果自定义类是从其他自定义类派生的,又会怎样呢? 二、 构造方法与继承 为了保障相关逻辑的正确性,在子类重写构造方法时,必须调用超类...

python类对象及类实例的创建过程【代码】【图】

类对象以及类实例的创建过程 # 类对象以及类实例的创建过程 class AnimalMeta(type):def __new__(cls, *args, **kwargs):print("=======>AnimalMeta__new__%s"%cls)return type.__new__(cls,*args,**kwargs)def __init__(self,*args,**kwargs):print("=======>AnimalMeta__init__%s"%self)def __call__(self, *args, **kwargs):print("=======>AnimalMeta__call__%s" % self)return type.__call__(self,*args,**kwargs)class Anima...

python – 在类层次结构中应该编写实例方法?【代码】

这是我用于模拟模型的类“层次结构”的一部分(我的代码在Python中,但我认为我的问题不依赖于语言):class World: # highest-level class, which "knows" everything about the model # most likely will have just one instance # contains (e.g., in a dictionary) references to all the instances of class Agentclass Agent: # each instance represents an agent # an agent can, among other things, move around according ...

异步Python类【代码】

我是一个真正的编码n00b,如果这是一个简单或基本的问题,请道歉. 我正在编写Python,Webapp,Appengine. 我的问题是,在我写完页面之后是否可以继续工作?那是最好的办法吗?基本上,当有人在我的网站上创建一个列表(www.7bks.com)时,我想继续工作,对他们刚刚选择的书籍进行一些’后处理’. 目前我有类似的东西(伪代码!)class InputList(webapp.RequestHandler):def post(self):#get books data from the post and put in datastorelis...

使用自定义dict类作为Python类的__dict__属性的奇怪行为【代码】

我有一个继承自字典的类,以便添加一些自定义行为 – 在这种情况下,它将每个键和值传递给一个函数进行验证.在下面的示例中,“验证”只是打印一条消息. 字典的分配按预期工作,每当项目添加到字典时打印消息.但是当我尝试使用自定义字典类型作为类的__dict__属性时,属性赋值又将键/值放入我的自定义字典类中,以某种方式设法将值插入到字典中,同时完全绕过__setitem__(和另一个我定义的方法可能会添加键). 自定义词典:from collection...

如何在Python类描述符对象上调用方法?【代码】

我用__get __(),__ set __()和方法to_db()创建了一个String()类;但是,当我执行name = String()时,我不能执行self.name.to_db(),因为它在__get __()返回的值上调用to_db(),而不是对象“name”.class String(object):def __init__(self, value=None):if value:self.value = str(value)def __get__(self, instance, owner):return self.valuedef __set__(self, instance, value):self.value = str(value)def to_db(self):return {'typ...

我可以从python类中删除一个继承的嵌套类吗?【代码】

例如.这可能吗?class Foo(object):class Meta:passclass Bar(Foo):def __init__(self):# remove the Meta class here?super(Bar, self).__init__()解决方法:您不能从继承的基类中删除类属性;您只能通过设置具有相同名称的实例变量来屏蔽它们:class Bar(Foo):def __init__(self):self.Meta = None # Set a new instance variable with the same namesuper(Bar, self).__init__()你自己的类当然也可以用类变量覆盖它:class Bar(F...

在python类上重写__or__运算符【代码】

作为一个人为的例子,假设我在python中生成一个随机的水果篮.我创造了篮子:basket = FruitBasket()现在我想指定篮子中可能出现的特定水果组合.假设我是一个非常挑剔的家伙,篮子要么必须装满苹果和石榴,橙子和葡萄柚,要么只有香蕉. 我正在阅读python运算符重载,似乎我可以定义__or__和__and__来获得我想要的行为.我想我可以这样做:basket.fruits = (Apple() & Pomegranate()) | (Banana()) | (Orange() & Grapefruit())这可以很好地...

python 类中__init__,__new__,__class__的使用详解【代码】

1、python中所有类默认继承object类,而object类提供了很多原始的内置属性和方法,所有用户定义的类在python 中也会继承这些内置属性。我们可以通过dir()进行查看。虽然python提供了很多内置属性但实际开发中常用的不多。而很多系统提供的内置属性实际开发中用户都要重写后才会使用。class Foo(object):#在python3中object可以不写pass dir(Foo) #查看python中给对象提供的内置属性 ***结果**** [__class__, __delattr__, __dict__...

python – 类中的所有函数都有__enter__和__exit__等价物吗?【代码】

我在使用数据库(或文件)时发现非常方便的python的一个功能是你可以给一个类的__enter__和__exit__函数.现在通过使用with语句,您可以确保在此块中首先调用__enter__(并且您可以打开数据库或文件),并在完成后调用__exit__(并且可以关闭数据库或文件. 每次调用我的Database类中的函数时,我想打开和关闭一个sqlite事务.我可以在每个函数的开头和结尾处执行它,但是因为必须为每个函数完成该类,我想知道,是否有在每个函数调用之前和之后调...

python – 类对象上的getattr【代码】

class A:def foo(self):print "foo()"getattr(A, foo) # True A.foo() # errorgetattr(A(), foo) # True A().foo() # prints "foo()"话虽这么说,这是我的问题: 我希望将测试用例元信息存储为Test Case类对象本身的属性,而不是它们的实例.我有一个要提取的属性名称列表,但是如果有一个同名的实例方法,那么getattr(class_obj,attr)将返回True,但是getattr(class_obj,attr)()会引发一个Error. 有没有办法告诉getattr不要包含实例化类...

python – 为类中的错误输入值引发TypeError异常【代码】

我正在尝试编写一个类,我希望如果该类的初始输入值不遵循特定类型,则会引发异常.例如,除了TypeError之外,我会使用它来返回错误.我不知道应该怎么做.我第一次尝试编写课程如下:class calibration(object):def __init__(self, inputs, outputs, calibration_info, interpolations=2):try:self.inputs=inputsexcept TypeErrorself.outputs=outputsself.cal_info=calibration_infoself.interpol=interpolations我想如果输入值不是字符...

运行 - 相关标签