標籤:python 變數 賦值
變數是用來儲存值的所在處,變數具有名字以及資料類型兩種屬性。資料類型決定了內容中不同類型的值的儲存結構。變數名用來調用變數。
Python 是動態類型語言,所以說不需要預先聲明變數類型就可以直接使用。變數的類型和值是在賦值時決定的。
一、變數的命名規範
1、只能使用大、小寫字母或者底線開頭;
2、除開頭部分外,可以是大、小寫字母、數字或者底線的隨意組合;
3、不能佔用python關鍵字;
4、變數名嚴格區分大小寫。
查看python關鍵字:
import keywordkeyword.kwlist()[‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘, ‘try‘, ‘while‘, ‘with‘,‘yield‘]
二、變數的命名規範
規則是必須的,規範不是必要的,但是它是墨守成規的。
1、一般情況不以底線開頭
以底線開頭的標識符是有特殊意義的。以單底線開頭 _foo 的代表不能直接存取的類屬性,需通過類提供的介面進行訪問,不能用 from xxx import * 而匯入;
以雙底線開頭的 __foo 代表類的私人成員;以雙底線開頭和結尾的 __foo__ 代表 Python 裡特殊方法專用的標識,如 __init__() 代表類的建構函式。
2、不能與內建函數或者模組重名,這樣雖然不會報錯,但是會使原有的函數失去意義。
例如:
把sum作為變數名,而sum是python內建的求和函數。
list1=[1,2,3,4,5]sum(list1)15sum=1sum(list1)Traceback (most recent call last): Python Shell, prompt 107, line 1TypeError: ‘int‘ object is not callable
當我把sum賦值為1後,在用sum求list1的和,就會引發異常,因為此時sum是1了,而不再是一個函數
三、變數的賦值
1、普通賦值
變數通過等號來賦值
count=10
2、自增賦值
count = count + 1
也可以寫成
count += 1
3、多元賦值
x,y,z=1,2,3print x,y,z1 2 3
此時的1,2,3實際上是個無關閉分割符的元組,等於(1,2,3)
當變數名多於變數值時:
x,y=12Traceback (most recent call last): Python Shell, prompt 110, line 1TypeError: ‘int‘ object is not iterable
異常:int不是可迭代對象
然後將int換成str
x,y="12"print x,y1 2
當可迭代的值也小於變數名時:x,y="1"Traceback (most recent call last): Python Shell, prompt 118, line 1ValueError: need more than 1 value to unpack
異常:需要多於一個值去解包
當變數名少於變數值時:
x,y=1,2,3Traceback (most recent call last): Python Shell, prompt 116, line 1ValueError: too many values to unpackx,y="123"Traceback (most recent call last): Python Shell, prompt 117, line 1ValueError: too many values to unpack
異常:太多的值需要解包
關於解包的知識在函數傳參的內容中會詳細講解
python的變數