我正在努力了解它的用法super().从它的外观来看,可以创建两个子类,就好了.
我很想知道以下2个孩子班级之间的实际差异.
class Base(object):
def __init__(self):
print "Base created"
class ChildA(Base):
def __init__(self):
Base.__init__(self)
class ChildB(Base):
def __init__(self):
super(ChildB, self).__init__()
ChildA()
ChildB()
Run Code Online (Sandbox Code Playgroud) 是否有任何理由要继承类声明object?
我刚刚发现了一些代码,我找不到一个很好的理由.
class MyClass(object):
# class code follows...
Run Code Online (Sandbox Code Playgroud) 有什么区别:
class Child(SomeBaseClass):
def __init__(self):
super(Child, self).__init__()
Run Code Online (Sandbox Code Playgroud)
和:
class Child(SomeBaseClass):
def __init__(self):
SomeBaseClass.__init__(self)
Run Code Online (Sandbox Code Playgroud)
我已经看到super在只有单继承的类中使用了很多.我可以看到为什么你在多重继承中使用它,但不清楚在这种情况下使用它的优点是什么.
我想知道何时使用__getattr__或__getattribute__.该文件提到了__getattribute__适用于新样式类.什么是新式课程?
我发现以下两项工作:
class Foo():
def a(self):
print "hello"
class Foo(object):
def a(self):
print "hello"
Run Code Online (Sandbox Code Playgroud)
所有Python类都应该扩展对象吗?没有扩展对象有任何潜在的问题吗?
我正在尝试将一些python代码翻译为scala代码.所以我是Python中的总菜鸟.
但为什么有些类将对象作为参数但从未明确使用它?首先将它作为参数的原因是什么?
例:
class Table(object)
Run Code Online (Sandbox Code Playgroud)
感谢您的时间.
在python中你怎么能扩展一个类?例如,如果我有
color.py
class Color:
def __init__(self, color):
self.color = color
def getcolor(self):
return self.color
Run Code Online (Sandbox Code Playgroud)
color_extended.py
import Color
class Color:
def getcolor(self):
return self.color + " extended!"
Run Code Online (Sandbox Code Playgroud)
但是这不起作用......我希望如果我工作color_extended.py,那么当我创建一个颜色对象并使用该getcolor函数时,它将返回带有字符串"extended!"的对象.到底.此外,它应该从导入gotton init.
假设python 3.1
谢谢
在旧的python版本中,当你在python中创建一个类时,它可以从对象继承,这是我理解的一个特殊的内置python元素,它允许你的对象成为一个新式的对象.
那么新版本(> 3.0和2.6)呢?我用google搜索了类对象,但是得到了很多结果(显而易见的原因).任何提示?
谢谢!
很简单,我正在学习python,我找不到一个引用,告诉我如何编写以下内容:
public class Team {
private String name;
private String logo;
private int members;
public Team(){}
// getters/setters
}
Run Code Online (Sandbox Code Playgroud)
后来:
Team team = new Team();
team.setName( "Oscar" );
team.setLogo( "http://...." );
team.setMembers( 10 );
Run Code Online (Sandbox Code Playgroud)
这是一个具有属性的类Team:name/logo/members
编辑 几次尝试后我得到了这个:
class Team:
pass
Run Code Online (Sandbox Code Playgroud)
后来
team = Team()
team.name="Oscar"
team.logo="http://..."
team.members=10
Run Code Online (Sandbox Code Playgroud)
这是python方式吗?感觉奇怪(当然来自强类型语言)
所有Python内置object函数都是子类,我遇到了许多用户定义的类.为什么?这堂课的目的是object什么?这只是一个空洞的课,对吧?
python ×10
inheritance ×4
class ×3
oop ×3
object ×2
super ×2
deprecated ×1
future-proof ×1
getattr ×1
getattribute ×1
interface ×1
python-3.x ×1