一、變量命名規劃
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
作者:沐雪
文章均系作者原創或翻譯,如有錯誤不妥之處,歡迎各位批評指正。本文版權歸作者所有,如需轉載懇請注明。