天天看點

python - 内置對象 之 變量

一、變量命名規劃

1.命名規則

(1)命名内容隻能是字母、下劃線、數字

(2)名字第1字元隻能是字母或下劃線

(3)區分大小寫

2.私有變量

(1)_xxx

  • "單下劃線" 開始的成員變量相當于私有變量,也叫做保護變量,意思是隻有類執行個體和子類執行個體能通路到這些變量,需通過類提供的接口進行通路;不能用'from module import *'導入

(2)__xxx

  • 雙下劃線:類中的私有變量/方法名。" 雙下劃線 " 開始的是私有成員,無法在執行個體外部直接通路,隻有類對象自己能通路。

(3)__xx __

  • 雙前後下劃線,系統定義名字,為特殊屬性或方法,特殊方法的存在是給Python解釋器調用的,你自己并不需要調用他們,例如:__init __ , 不要自己發明這樣的名字。

(4)xx_

  • # 單後置下劃線,用于避免與Python關鍵詞的沖突。

3.python常用命名規範

(1)子產品名:

小寫字母,單詞之間用_分割

ad_stats.py

(2)包名:

和子產品名一樣

(3)類名:

單詞首字母大寫

AdStats

ConfigUtil

(4)全局變量名(類變量,在java中相當于static變量):

大寫字母,單詞之間用_分割

NUMBER

COLOR_WRITE

(5)普通變量:

小寫字母,單詞之間用_分割

this_is_a_var

(6)執行個體變量:

以_開頭,其他和普通變量一樣

_price

_instance_var

(7)私有執行個體變量(外部通路會報錯):

以__開頭(2個下劃線),其他和普通變量一樣

__private_var

(8)專有變量:

__開頭,__結尾,一般為python的自有變量,不要以這種方式命名

__doc__

__class__

(9)普通函數:和普通變量一樣

get_name()

count_number()

ad_stat()

(10)私有函數(外部通路會報錯):

以__開頭(2個下劃線),其他和普通函數一樣

__get_name()

二、變量指派規則

Python使用變量之前不需聲明,變量指派既是聲明也是定義變量的過程。變量在使用之前都必須指派。

1.賦空值方法

各類型對象賦空值方法

digital_value=0 #數字

str_value=""或str_value='' #字元串

list_value=[] #清單

ditc_value={} #字典

tuple_value=() #元組

2.增強指派語句

3.變量指派比較式

value = 2 < 5;

print(value;)   #結果傳回true

4.用input()對變量指派

value=input();  #手工輸入23

print(value);

5.删除已聲明的變量

del var1

當我們删除var1對象後,再執行列印var1時,會報Not Defined的錯誤。

三、python變量引用順序

  • 從目前作用域開始尋找變量,沒有則就往上一層作用域尋找,還沒則繼續往上一層找...... ,尋找順序:
  • 目前作用域局部變量->外層作用域變量->再外層作用域變量->......->目前子產品全局變量->pyhton内置變量
  • 觀察下面3個例子,觀察a的輸出
#例1:
 
a = 10
 
def outer():
 
a = 9
 
def inner():
 
a = 8
 
print(a)
 
inner()
 
print(a)
 
outer()
 
print(a)
 
結果:
 
8
 
9
 
10
 
 
 
例2:
 
a = 10
 
def outer():
 
a = 9
 
def inner():
 
print(a)
 
inner()
 
print(a)
 
outer()
 
print(a)
 
結果:
 
9
 
9
 
10
 
 
 
例3:
 
a = 10
 
def outer():
 
def inner():
 
print(a)
 
inner()
 
print(a)
 
outer()
 
print(a)
 
結果:
 
10
 
10
 
10      

四、global定義全局變量

  • global定義全局變量作用:聲明自定義函數内的變量為全局變量
全局變量例子
x = 50
def func():
    global x
    print('x的值是', x)
    x = 2
    print('全局變量x改為', x)
     
func()
print('x值是', x)
x的值是 50
全局變量x改為 2
x值是 2      

 作者:沐雪

文章均系作者原創或翻譯,如有錯誤不妥之處,歡迎各位批評指正。本文版權歸作者所有,如需轉載懇請注明。