
定义
1、静态方法也可以直接通过类名调用,不需要先创建对象。区别在于类方法的第一个参数是类本身(cls),而静态方法没有这样的参数。
如果方法需要与其他类属性或类方法互动,可以定义为类方法;如果方法不需要与其他类属性或类方法互动,可以定义为静态方法。
2、定义静态方法时,需要在方法的前面加上装饰器 @staticmethod。
1 2 3 4 | class 类:
@staticmethod
def 静态方法():
pass
|
实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | import random
class Char:
letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
digits = '0123456789'
@classmethod
def random_letter(cls):
return random.choice(cls.letters)
@classmethod
def random_digits(cls):
return random.choice(cls.digits)
@staticmethod
def random_char(string):
if not isinstance(string, str):
raise TypeError( '需要字符串参数' )
return random.choice(string)
|
以上就是python静态方法的定义,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。