在python中設定靜態變數

2021-08-14 22:09:25 字數 541 閱讀 1037

c語言中,在函式內部可以定義static型別的變數,這個變數是屬於這個函式的全域性物件。在python中也可以實現這樣的機制。

def f():

if not hasattr(f, 'x'):

f.x = 0

print(f.x)

f.x+=1

f()#輸出1

f()#輸出2

def f():

class haha:

cnt=1

def __init__(self):

print("haha"*haha.cnt)

haha.cnt+=1

if not hasattr(f, 'x'):

f.x = 0

if not hasattr(f,'ha'):

f.ha=haha

print(f.x)

f.ha()

f.x+=1

f()#輸出0和haha

f()#輸出1和hahahaha

Ubuntu設定靜態變數

如果不配置靜態位址,那麼重啟伺服器後有可能會重新分配到新的ip位址,就需要重新配置一些檔案,避免麻煩,就將位址設定成固定的,一下是ubuntu18.04的配置方法 ubuntu 18.04 開啟 etc netplan 01 network manager all.yaml 配置檔案,原文內容如下 ...

python類靜態變數

python的類靜態變數直接定義在類中即可,不需要修飾符,如 class test stc attr 1def init self,attr1,attr2 self.attr1 attr1 self.attr2 attr2 在類test中,stc attr是屬於類test的靜態變數,attr1和at...

靜態變數和非靜態變數

class string1 a和b編譯報錯,can not make a static referrence to no static filed s3,s4 分析 string s1 pingguo string s2 xiangjiao string s3 new string lizi str...