Skip to main content
 首页 » 编程设计

python之了解 Python 中的空格

2025年05月04日10dyllove98

我是 Python 初学者。我知道空格对编译起着重要作用。所以我在同一个 python 脚本文件中有以下两个类:

class ClassA: 
  def __init__(self): 
     self.x = {} 
  def _methodA1(): 
    # Something 
  def _methodA2(): 
    # Something 
 
class ClassB: 
  def _methodB1(): 
    # Something 
  def _methodB2(): 
    # Something 
 
def MethodX(): 
  print "Hello World" 

(1)MethodX属于哪个类?

(2) 我们可以说 ClassB 是 ClassA 的内部类吗?

(3) 如果 MethodX 属于 ClassA,是否意味着 self.x 可以通过 MethodX 访问?

请您参考如下方法:

  1. MethodX 不属于任何类,它是一个全局函数,不是其中一个类的方法
  2. 不,因为 ClassA 和 ClassB 的缩进相同; ClassA 的内部类将匹配 ClassA
  3. 中方法定义的缩进
  4. 由于它不属于任何类,MethodX 无法直接访问任何实例的属性。除此之外,self 必须被方法显式接受为第一个位置参数;由于 MethodX 不接受 self,因此无法访问它。因此,您所有的方法都被破坏了;除非用 @staticmethod 修饰,否则它们需要接受至少一个位置参数(根据常规方法的约定称为 self,而 cls @classmethod 的约定)。