久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

python“靜態”變量、實例變量與本地變量的聲明示例

瀏覽:6日期:2022-07-05 15:53:19

前言

雖然各種編程語言之間大部分語法存在共通的地方,但是在一些細節的處理上還是千差萬別

才接觸Python不久(之前是學Java的),實在想吐槽一下語言之間編碼格式上的不統一問題,比如Java用分號分隔代碼塊,Python用空格,這無形之中增加了編碼人員的學習成本

作為初學人員,還是老老實實記錄一下學習過程中的坑:)

1. “靜態”變量的聲明

這里的靜態變量是借用Java中靜態變量的概念(不知道Python中的具體概念是什么),指既可以通過類名直接進行訪問,也可以通過類的實例進行訪問的變量。這種變量的聲明很簡單,直接在類代碼塊中設置變量即可,不需要任何關鍵字

Java中這樣聲明的變量是實例變量,只能通過對象實例進行訪問

class Test: # 這是一個“靜態”變量 className = 'Test'

2. 實例變量的聲明

實例變量是指必須通過類的實例去訪問的變量

實例變量的聲明比較神奇,在任意的方法中,在變量名稱前面加上“self.”,該變量就變成了實例變量。這樣這個變量在其他的方法中也同樣可以使用了(個人感覺有點奇葩啊有木有)

所以實例變量的聲明有一點特別重要,如果該實例變量會做跨方法的使用,那么實例變量聲明的方法一定要在實例變量使用的方法調用之前執行

def __init__(self): # 這是一個實例變量 self.hello = Hello()

3. 本地變量的聲明

本地變量是僅在類的方法中使用的變量

聲明方法也很簡單,直接在類的方法中定義變量即可

def who(self): # 這是一個本地變量 name = 'Cain' return name

最后是一個完整的使用示例:

一個hello類:

class Hello: def who(self): # 這是一個本地變量 name = 'Cain' return name

一個Test類(其中會用到hello類):

# -*- coding:UTF-8 -*-from hello import Hello class Test: # 這是一個“靜態”變量 className = 'Test' def __init__(self): # 這是一個實例變量 self.hello = Hello() def sayName(self): # 類的方法中訪問實例變量 print('My name is ' + self.hello.who()) if __name__ == '__main__': test = Test() test.sayName() test1 = Test() # 通過類名直接訪問靜態變量 print(Test.className) # 通過實例名訪問靜態變量 print(test.className) # 通過實例名訪問實例變量 print(test.hello.who()) # 通過類名直接訪問實例變量會報錯!!! # print(Test.hello.who())

總結

到此這篇關于python“靜態”變量、實例變量與本地變量聲明的文章就介紹到這了,更多相關python靜態變量、實例變量與本地變量聲明內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久久精品电影 | 美国一级黄色片 | 日韩毛片| 久久久精品亚洲 | 一区二区精品视频 | 亚洲国产高清高潮精品美女 | 在线视频 欧美日韩 | 欧美黑人一级毛片 | 天天综合网7799精品 | 久草天堂 | 国产精品一区二区三区四区 | 精品av| 在线成人免费视频 | 亚洲精品久久 | 91高清视频在线观看 | 一区二区三区在线观看视频 | 情趣视频在线免费观看 | 午夜视频福利 | 欧美精品免费在线 | a欧美| 久久69精品久久久久久久电影好 | 中文字幕在线观看免费视频 | 成人免费黄色小视频 | 国产一级高清视频 | 日韩在线不卡 | 在线亚洲一区 | 激情五月婷婷综合 | 国产片在线观看 | 福利片在线 | 日韩中文在线 | 成人午夜 | 国产精品国产三级国产aⅴ中文 | 亚洲xx站 | 亚洲精品国产第一综合99久久 | 99视频在线免费观看 | 亚洲成av人片在线观看 | 国产色网 | 爱爱视频在线 | 久久网站免费视频 | av黄色在线| 欧美二区在线观看 |