变量 和 注释
轉自:白月黑羽Python3教程:http://www.python3.vip/doc/tutorial/python/0003/
?
Python語言中,所有的?數據?都被稱之為?對象。
每個整數、小數、字符串,還有我們后面要學的 字典、元組、列表 等, 都是對象。
在Python程序運行的時候,這些對象 其實就是?內存中的一段數據?。
變量的概念
大家來思考一個問題:
人類語言里面,當我們提到一個人或物體, 是怎么說的?
比如說 聊天的時候,提到你的一個同學, 提到一支球隊
對了,用他們的?名字。
比如: 王曉剛同學, 湖人隊等等。
如果不允許使用 事物的名字, 我們的話就沒法說了。
人類語言是這樣,計算機語言也是一樣,如果產生了數據對象,卻沒有給它們起名字,就像這樣
43 '你好,今天天氣真不錯'
我們后面的代碼,怎么去使用這個數字?43?和 字符串?'你好,今天天氣真不錯'?呢?
編程語言為了方便操作數據對象,也需要給對象起一個名字。
我們把Python語言中對象的名字, 稱之為?變量名?, 有時也簡稱?變量。
我們可以這樣給數據對象起名字
age = 43 weather = '你好,今天天氣真不錯'?
變量名 和 數據對象 之間 用?等號?連接
其中
age?就是 數字對象?43?的名字,我們也可以說:變量age的值 是數字對象?43
weather?就是 字符串對象?你好,今天天氣真不錯?的名字,我們也可以說:變量 weather 的值 是 字符串對象?你好,今天天氣真不錯
定義了變量之后,我們寫代碼,需要用到 這 兩個對象時,就可以用它們的名字: 變量名。
比如
age = 43 weather = '你好,今天天氣真不錯' print(age) print(weather)
代碼執行的時候,解釋器看到 變量名 就知道代表的就是對應的數據對象。
大家運行一下,可以發現,可以打印出變量所代表的 對象。
下面這行語句,?定義了?一個變量 age 值為 43,
age = 43
也可以稱之為: 給變量 age?賦值?為43
變量的命名規則
變量名不是隨便取的,有一定的規則。
-
變量名可以包含 字母、數字和下劃線。
-
變量名可以以字母或下劃線打頭,比如 var1 , 或者 _var 。
-
但不能以數字打頭, 像?1var?這樣是不行的。
-
變量名中不能包含空格。
-
變量名中可以包含下劃線,像下面這樣都是可以的
Hello, var1, age2name, age_name
-
變量名 不能 和 關鍵字 同名,
比如
as = 1997as 是 Python的關鍵字,是Python語言中有特殊意義的名字, 不能用作變量名。
-
變量名 不要 和 內置函數 同名
比如
type = 333 # 這行代碼就把type這個內置函數名 重新賦值為數字對象 333 了type(333) # 相當于把數字對象當做函數對象進行調用,執行的時候就會出錯了。可以點擊這里查看Python中有哪些關鍵字和內置函數
一個好的工程師,變量名不是亂取的,我們通常稱之為見名知意原則,就是看到變量名,就知道變量對應的數據的含義。
比如 startTime, your_name, 這樣的變量名,看了就知道是啥意思
而像 a , b , c 這樣的變量名就不好,因為看了不知道是啥意思。
?
注意:在Python中 變量名是大小寫敏感的。
不可以 在定義的時候使用 startTime 作為變量名,而在使用的時候,用 starttime 。
下面的代碼就不正確
startTime = '20180504' print(starttime)變量值的變化
對象的名字為什么叫變量呢?
因為它會變 :)
Python語言中,變量的值會可以產生變化
這里特別要注意的是,這種變化有如下兩種情況
第一種:變量 重新指向了 新的對象
這種情況也被稱之為 變量重新賦值,比如
age = 43 age = 'hello'運行程序的時候,第一條語句執行完的時候,變量名age就是數字對象?43?的名字。
其對應關系如下圖所示:
?
第二條語句執行完, 變量age就不是數字對象?43?的名字了,而是字符串對象?hello?的名字了。
其對應關系如下圖所示:
當第二條語句執行完, 數字對象 43 就沒有變量引用它了。
注意 沒有被引用的對象,解釋器會在隨后某個時候從內存中清除掉。
一個對象可以有多個名字,比如
kid = '小明' student = kid prettyboy = kid這樣,?小明?這個字符串對象就有3個 變量名 kid、 student 和 prettyboy
這3個名字 指向同一個對象。
其對應關系如下圖
?
如果后面的代碼將其中一個變量名進行重新賦值,比如
kid = '小周'這只會改變kid 一個變量和其指向對象的 關系,并不會改變其他的變量名 student 和 prettyboy
其對應關系如下圖
?
第二種: 變量 指向的對象 本身發生了變化
這種情況,是當變量指向的對象是可變的數據類型,比如:列表、字典,或者自定義的類實例對象。
這幾種對象類型我們后面會學。
這里先給大家舉個字典對象的例子
info = {'name' :'黑羽白月', 'height':'180cm'}info['height'] = '175cm'print(info)第二條語句就是讓變量對應的字典對象的值 發生了變動
?
注釋
雖然Python語言是一種容易理解和閱讀的編程語言。
但是畢竟不是人類語言。
我們寫的代碼 為了以后 別人能讀懂, 甚至以后自己能看懂, 就需要加入一些我們熟悉的人話,也就是人類語言,輔助理解。
這些輔助理解的人話,就是注釋。
這些人話可以是任何一種語言,只要方便你看懂代碼就行,中文、英文、法文都可以。
Python的注釋以?#?開頭,后面的內容都是注釋
比如
# info 變量 記錄 作者的信息,包括 名字,身高,體重 info = {'name' :'黑羽白月', 'height':'180cm'}# 改變 作者的身高記錄 info['height'] = '175cm'print(info) # 打印身高到屏幕上怎么樣,有了上面的注釋,這些代碼是不是更容易讀懂了?
我們要注意的是,通常注釋是不會對代碼的執行有影響的(除了一些非常特殊的注釋,比如代碼開頭的文件編碼注釋,以后會講)
注釋可以單獨作為一行, 比如:
# info 變量 記錄 作者的信息,包括 名字,身高,體重 info = {'name' :'黑羽白月', 'height':'180cm'}
也可以接在代碼的后面,比如:
也可以連續有多行的注釋,比如:
# info 變量 記錄 作者的信息 # 包括 名字,身高,體重 info = {'name' :'黑羽白月', 'height':'180cm'}?
所以,如果我們接下來執行下面的代碼
print(kid) print(student) print(prettyboy)運行結果就是
小周 小明 小明
?
轉載于:https://www.cnblogs.com/allenblogs/p/10224291.html
總結
- 上一篇: B1023 组个最小数 (20分)
- 下一篇: U66785 行列式求值