我对python很新,并注意到这些帖子: Python __init__和self他们做了什么?和 Python类没有使用def __init __(self)
然而,在玩完它之后,我注意到这两个类别给出了明显相同的结果 -
class A(object):
def __init__(self):
self.x = 'Hello'
def method_a(self, foo):
print self.x + ' ' + foo
Run Code Online (Sandbox Code Playgroud)
(来自这个问题)
和
class B(object):
x = 'Hello'
def method_b(self,foo):
print self.x + ' ' + foo
Run Code Online (Sandbox Code Playgroud)
这两者之间有什么真正的区别吗?或者,更一般地说,是否确实__init__改变了关于类的属性的任何内容?在文档中提到了__init__在创建实例时调用的文档.这是否意味着在实例化之前建立x了类B?
我有一个 docker 容器,我在其中创建了一个名为“first_app_firstresource”的表。但是,当我尝试删除此表时,它什么也不做。相反,这是发生的事情:
docker=# \d
Run Code Online (Sandbox Code Playgroud)
表的一部分...
Schema | Name | Type | Owner
--------------------------------------------
public | first_app_firstresource | table | docker
然后它直接进入...
docker-#
Run Code Online (Sandbox Code Playgroud)
请注意,现在不是 =#,而是 -#。
然后我尝试放下桌子
docker-# drop table first_app_firstresource
Run Code Online (Sandbox Code Playgroud)
没有任何事情发生。
我已经看到Postgresql DROP TABLE 不起作用,并且添加引号似乎也没有任何作用。