Python 类方法定义中下划线的使用

__foo__: 定义的是特殊方法,一般是系统定义名字 ,如 __init__() 之类的。

_foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *

__foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了
Python 定义以关键字 `class` 开头,后跟名。名可以使用驼峰命名法或下划线分隔命名法。定义的主体部分由一个或多个语句组成,这些语句用于描述的属性和方法。 以下是一个简单的定义: ```python class Person: def __init__(self, name, age): # 构造函数 self.name = name self.age = age def say_hello(self): # 方法 print("Hello, my name is", self.name, "and I am", self.age, "years old.") ``` 上面的代码定义了一个名为 `Person` 的,它有两个属性 `name` 和 `age`,以及一个方法 `say_hello()`。`__init__()` 是 Python 的构造函数,它在创建对象时被调用。`self` 是一个特殊的参数,它指向正在创建的对象本身。 要使用一个,我们需要创建一个的实例。例如: ```python person1 = Person("Alice", 25) person1.say_hello() # 输出: Hello, my name is Alice and I am 25 years old. ``` 在上面的代码,我们创建了一个名为 `person1` 的 `Person` 的实例,并调用了 `say_hello()` 方法。 此外,我们还可以使用变量和方法定义的属性和方法变量是所有对象共享的变量,而方法只能访问变量。以下是一个使用变量和方法的示例: ```python class Dog: num_legs = 4 # 变量 @classmethod def bark(cls): # 方法 print("Woof! I have", cls.num_legs, "legs.") dog1 = Dog() dog1.bark() # 输出: Woof! I have 4 legs. ``` 在上面的代码,我们定义了一个名为 `Dog` 的,该有一个变量 `num_legs` 和一个方法 `bark()`。`@classmethod` 是 Python 的装饰器,它用于将方法标记为方法。 我们创建了一个 `Dog` 的实例 `dog1`,并调用了 `bark()` 方法。由于 `bark()` 是一个方法,因此它可以访问变量 `num_legs` 并输出它的值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值