2020年9月14日星期一

[課後作業] 第003講:插曲之變量和字符串|課後測試題及答案

申明本站飛宇網 https://feiyetopro.blogspot.com/自網路收集整理之書籍文章影音僅供預覽交流學習研究,其[書籍、文章、影音]情節內容, 評論屬其個人行為, 與本網站無關。版權歸原作者和出版社所有,請在下載 24 小時內刪除,不得用作商業用途;如果您喜歡其作品,請支持訂閱購買[正版]謝謝!


[課後作業] 第003講:插曲之變量和字符串|課後測試題及答案



《零基礎入門學習Python》視頻下載地址:傳送門

測試題:

0.以下哪個變量的命名不正確?為什麼?

    (A) MM_520 (B) _MM520_ (C) 520_MM (D) _520_MM


1.在不上機的情況下,以下代碼你能猜到屏幕會打印什麼內容嗎?

  1. >>>myteacher = '小甲魚'
  2. >>>yourteacher = myteacher
  3. >>>yourteacher = '黑夜'
  4. >>>print(myteacher)
複製代碼


2. 在不上機的情況下,以下代碼你能猜到屏幕會打印什麼內容嗎?
  1. >>> myteacher = '小甲魚'
  2. >>> yourteacher = myteacher
  3. >>> myteacher = '黑夜'
  4. >>> print(yourteacher)
複製代碼


3. 在不上機的情況下,以下代碼你能猜到屏幕會打印什麼內容嗎?
  1. >>>first = 520
  2. >>>second = '520'
  3. >>>first = second
  4. >>>print(first)
複製代碼


4.除了使用反斜杠(\)進行字符轉義,還有什麼方法可以打印:Let's go!這個字符串?


5.如果非要在原始字符串結尾輸入反斜杠,可以如何靈活處理?


6.在這一講中,我們說變量的命名需要注意一些地方,但小甲魚在舉例的時候貌似卻乾了點兒“失誤”的事兒,你能看得出小甲魚例子中哪裡有問題嗎?

動動手:

0.還記得我們第一講的動動手的題目嗎?這一次要求使用變量,計算一年有多少秒?

提示:可以以DaysPerYear(每年天數),HoursPerDay(每天小時數),MinutesPerHour(每小時分鐘數),SecondsPerMinute(每分鐘秒數)為變量名。


1.關於最後提到的長字符串(三重引號字符串)其實在Python3還可以這麼寫,不妨試試,然後比較下哪種更方便?
  1. >>> string = (
  2. "我愛魚C,\n"
  3. "正如我愛小甲魚,\n"
  4. "他那呱唧呱唧的聲音,\n"
  5. "總纏繞於我的腦海,\n"
  6. "久久不肯散去……\n")
複製代碼


2.請寫下這一節課你學習到的內容:格式不限,回憶並複述是加強記憶的好方式!


回复您的答案即可查看參考答案!


測試題答案:

本帖隱藏的內容

0.以下哪個變量的命名不正確?為什麼?(A) MM_520 (B) _MM520_ (C) 520_MM (D) _520_MM

(C)選項不正確,因為Python中的變量名不能以數字開頭。


1.在不上機的情況下,以下代碼你能猜到屏幕會打印什麼內容嗎?

會打印:小甲魚


2.在不上機的情況下,以下代碼你能猜到屏幕會打印什麼內容嗎?

會打印:小甲魚


3.在不上機的情況下,以下代碼你能猜到屏幕會打印什麼內容嗎?

會打印:520,注:這裡沒有單引號括起來,但是他是一個字符串,因為使用print()打印,所以不包含單引號。可以試試直接>>>first,它是一個字符串的。


4.除了使用飯斜杠(\)進行字符轉義,還有什麼方法可以打印:Let's go!這個字符串?

  1. >>>"Let's go!"
複製代碼

聰明的魚油,你想到了嗎?


5.如果非要在原始字符串結尾輸入反斜杠,可以如何靈活處理?

  1. >>>str = r'C:\Program Files\FishC\Good''\\'
複製代碼

聰明的魚油,你想到了嗎?


6.在這一講中,我們說變量的命名需要注意一些地方,但小甲魚在舉例的時候貌似卻乾了點兒“失誤”的事兒,你能看得出小甲魚例子中哪裡有問題嗎?



在例子中小甲魚起了個str 名字的變量,但事實上我們發現,str 的顏色跟普通變量貌似不同?沒錯,str() 和print() 都是內置函數,但Python 貌似不介意我們對內置函數進行賦值操作,所以這點我們以後就要注意啦,否則可能會出現以下的BUG:

  1. >>> print = 1
  2. >>> print("I love FishC")
  3. Traceback (most recent call last):
  4.   File "<pyshell#37>", line 1, in <module>
  5.     print("I love FishC")
  6. TypeError: 'int' object is not callable
複製代碼



動動手答案:

本帖隱藏的內容

0. 還記得我們第一講的動動手的題目嗎?這一次要求使用變量,計算一年有多少秒?

  1. DaysPerYear = 365
  2. HoursPerDay = 24
  3. MinutesPerHour = 60
  4. SecondsPerMinute = 60
  5. result = DaysPerYear * HoursPerDay * MinutesPerHour * SecondsPerMinute
  6. print(result)
複製代碼

小甲魚備註:大家看到了要給變量起一個合適的名字並不容易,但在很多文檔中,這類名字隨處可見,所以要習慣。


1.關於最後提到的長字符串(三重引號字符串)其實在Python3還可以這麼寫,不妨試試,然後比較下哪種更方便?

顯然,三重引號字符串更方便簡潔。


2.請寫下這一節課你學習到的內容:格式不限,回憶並複述是加強記憶的好方式!

小甲魚希望你認真對待作業就像你希望小甲魚推出高質量視頻一樣渴望^_^


(1)變量
變量名就像我們現實社會的名字,把一個值賦值給一個名字時,Ta會存儲在內存中,稱之為變量(variable),在大多數語言中,都把這種行為稱為“給變量賦值”或“把值存儲在變量中”。
不過Python與大多數其他計算機語言的做法稍有不同,Ta並不是把值存儲在變量中,而更像是把名字貼在值的上邊。
所以有些Python程序員會說“Python”沒有“變量”,只有“名字”。
舉例: 
>>>first = 3
>>> second = 8
>>> third = first + second
>>> print(third)
11
需要注意的地方:
a.在使用變量之前,需要先對其進行賦值;
b.變量名可以包括字母、數字、下劃線,但變量名不能以數字開頭;
c.字母可以是大寫或小寫,但大小寫是不同的。也就是說fishc和Fishc對於Python來說是完全不同的兩個名字;
d.等號(=)是賦值的意思,左邊是名字,右邊是值,不能寫反哦。
e.變量的命名理論可以取任何合法的名字,但作為一個優秀的程序員,請將盡量給變量取一個專業一點的名字。
(2)字符串
到目前為止,我們所認知的字符串可以是引號內的一切東西,我們也把字符串叫做文本,文本和數字是截然不同的,咱看例子:
>>> 5+8
13
>>> "5"+"8"
'58'
要告訴Python你在創建一個字符串,就要在字符兩邊加上引號,可以是單引號也可以是雙引號,Python表示不挑剔。但必須成對,你不能一邊單引號,另一邊卻花心的用上雙引號結尾。
>>> 'I love you"
SyntaxError: EOL while scanning string literal
如果字符串中需要出現單引號或雙引號怎麼辦?---例如我想打印字符串:Let's go!
有兩種方法:
第一種方法比較常用,就是使用我們的轉義符號(\)對字符串中的引號進行轉義:
>>> 'Let\'s go!'
"Let's go!"
>>> "Let\'s go!"
"Let's go!"
>>> Let's go!
SyntaxError: EOL while scanning string literal
還有一種方法就是用雙引號或者單引號引起這個字符串。
a.如果字符串中有單引號,就用雙引號引起來,例如:
>>> "Let's go!"
"Let's go!"
>>> print("Let's go!")
Let's go!
b.如果字符串中有雙引號,就用單引號引起來,例如:
>>> 'I love "China"'
'I love "China"'
>>> print('I love "China"')
I love "China"
原始字符串
好像反斜杠是一個好東西,但不妨試試打印:
>>> str = 'C:\now'
>>> str
'C:\now'
>>> print(str)
C:
ow
我們可以使用反斜杠對反斜杠自身進行轉義:
>>> str = 'C:\\now'
>>> str
'C:\\now'
>>> print(str)
C:\now
但如果對於一個字符串有很多個反斜杠:
>>>str = 'C:\Program Files\Intel\Wifi\Help'
這樣挨個添加反斜杠就不是很合理了。所以就需要我們的原始字符串
原始字符串的使用非常簡單,只需要在字符串前面加一個英文字母r即可。
>>> str = r'C:\now'
>>> str
'C:\\now'
>>> print(str)
C:\now
但是這裡有一點需要注意的是:原始字符串在字符串的後面是不能有反斜杠的,例如:
>>> str = r'C:\now\'
SyntaxError: EOL while scanning string literal
但是我們可以使用下面的方法實現:
>>> print(str + '\\')
C:\now\
長字符串
如果希望得到一個跨越多行的字符串,我們就可以使用三重引號字符串,這裡的三重引號可以是三個單引號也可以是三個雙引號。
>>> str = """輕輕的我走了,
正如我輕輕的來;
我輕輕的招手,
作別西天的雲彩。...
"""
>>> str
'輕輕的我走了,\n正如我輕輕的來;\n我輕輕的招手,\n作別西天的雲彩。...\n'
>>> print(str)
輕輕的我走了,
正如我輕輕的來;
我輕輕的招手,
作別西天的雲彩。...

最後需要注意的一點是必須使用英文標點符號





0 留言:

發佈留言