0. 以下哪個變量的命名不正确?為什麼?
(A) MM_520 (B) _MM520_ (C) 520_MM (D) _520_MM
c,因為 Python 中的變量名不能以數字開頭。
1. 在不上機的情況下,以下代碼你能猜到螢幕會列印什麼内容嗎?
× 黑夜 (見下面總結)
小甲魚
2. 在不上機的情況下,以下代碼你能猜到螢幕會列印什麼内容嗎?
× 黑夜(見下面總結)
小甲魚
3. 在不上機的情況下,以下代碼你能猜到螢幕會列印什麼内容嗎?
520
會列印:520,注:這裡沒有單引号括起來,但是他是一個字元串,因為使用 print() 列印,是以不包含單引号。可以試試直接>>>first,它是一個字元串的。
4. 除了使用反斜杠(\)進行字元轉義,還有什麼方法可以列印:Let's go! 這個字元串?
(1)
>>> "Let's go!"
"Let's go!"
(2)
>>> print("Let's go!")
Let's go!
5. 如果非要在原始字元串結尾輸入反斜杠,可以如何靈活處理?
>>> print("Let's go!\\")
Let's go!\
6. 在這一講中,我們說變量的命名需要注意一些地方,但小甲魚在舉例的時候貌似卻幹了點兒“失誤”的事兒,你能看得出小甲魚例子中哪裡有問題嗎?
動動手:
0. 還記得我們第一講的動動手的題目嗎?這一次要求使用變量,計算一年有多少秒?
提示:可以以 DaysPerYear(每年天數),HoursPerDay(每天小時數),MinutesPerHour(每小時分鐘數),SecondsPerMinute(每分鐘秒數)為變量名。
>>> DaysPerYear = 365
>>> HoursPerDay = 24
>>> MinutesPerHour = 60
>>> SecondsPerMinute = 60
>>> ans = DaysPerYear * HoursPerDay * MinutesPerHour * SecondsPerMinute
>>> ans
31536000
1. 關于最後提到的長字元串(三重引号字元串)其實在 Python3 還可以這麼寫,不妨試試,然後比較下哪種更友善?
總結
指派,掌握的不夠好。
自己了解:針對數組,清單等對象通用,對于單個資料,字元串等都不通用。
清單:
>>> a = [1 , 2 , 3 , 4]
>>> b = a
>>> a.append(6)
>>> a
[1, 2, 3, 4, 6]
>>> b
[1, 2, 3, 4, 6]
字元串:
>>> a = 'asd'
>>> b = a
>>> a = 'asd' + 'asd'
>>> a
'asdasd'
>>> b
'asd'
- 直接指派:其實就是對象的引用(别名)。
- 淺拷貝(copy):拷貝父對象,不會拷貝對象的内部的子對象。
- 深拷貝(deepcopy): copy 子產品的 deepcopy 方法,完全拷貝了父對象及其子對象。
-
解析
1、b = a: 指派引用,a 和 b 都指向同一個對象。 2、b = a.copy(): 淺拷貝, a 和 b 是一個獨立的對象,但他們的子對象還是指向統一對象(是引用)。 b = copy.deepcopy(a): 深度拷貝, a 和 b 完全拷貝了父對象及其子對象,兩者是完全獨立的。