class two:
def init(self,*n):
if len(n)!=0:
global a
a=n[0]
@classmethod
def pown(cls,*m):
if len(m)!=0:
return 2**m[0]
else:
return 2**a
print(two.pown(2)) # 输出2的n次方
print(two.pown()) # 输出2的0次方
print(two(2).pown()) # 输出2的n次方
print(two(4).pown(4)) # 输出2的m次方
代码这,23交换顺序,输出是4和4,而我需要应该是4和1,不交换顺序是对着,1和4
class 方法的init初始化没写对,一进来没有调用
a = 0
class two:
def __init__(self, *n):
if len(n) != 0:
global a
a = n[0]
@classmethod
def pown(cls, *m):
if len(m) != 0:
return 2 ** m[0]
else:
return 2 ** a
print(two.pown(2)) # 输出2的n次方
print(two.pown()) # 输出2的0次方
print(two(2).pown()) # 输出2的n次方
print(two(4).pown(4)) # 输出2的m次方