av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

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

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

瀏覽:4日期: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 編程
相關文章:
主站蜘蛛池模板: 日本黄色大片免费 | 成人亚洲 | 精品成人在线 | 欧美v日韩v | 电影在线| 在线看片国产精品 | 久久精品国产一区二区三区不卡 | 欧美亚洲视频 | 欧美日韩在线电影 | 这里只有精品99re | 久久天天躁狠狠躁夜夜躁2014 | 日韩电影免费观看中文字幕 | 国产精品国产a | 中文成人在线 | 成人欧美一区二区三区在线播放 | 日韩精品一区二区久久 | 中文字幕av网址 | 色999视频| 欧美1区 | 超碰国产在线 | re久久 | 999www视频免费观看 | 欧美日韩在线一区二区 | 91国产在线播放 | 日韩视频一区在线观看 | 国产精品成人一区二区三区 | h漫在线观看 | 亚洲日本欧美日韩高观看 | 精品国产三级 | a中文在线视频 | av毛片在线免费观看 | 国产高潮好爽受不了了夜色 | 久久精品国产一区二区电影 | 盗摄精品av一区二区三区 | 色综合色综合 | 国产成人免费视频网站视频社区 | 久久国产欧美一区二区三区精品 | 中文字幕视频在线观看 | 男女一区二区三区 | 99久久精品免费视频 | 国产色|