[課后作業] 第010講:列表:一個打了激素的數組 | 課后測試題的答案


0. 列表都可以存放一些什么東西?
  
我們說 Python 的列表是一個打了激素的數組,如果把數組比喻成集裝箱,那么 Python 的列表就是一個大倉庫,Ta 可以存放我們已經學習過的任何數據類型。

>>> mix = [1, ‘小甲魚’, 3.14, [1, 2, 3]]
  
  
1. 向列表增加元素有哪些方法?
  
這節課我們教過大家三種方法想列表增加元素,分別是:append()、extend() 和 insert()。
  
  
2. append() 方法和 extend() 方法都是向列表的末尾增加元素,請問他們有什么區別?
  
append() 方法是將參數作為一個元素增加到列表的末尾。
extend() 方法則是將參數作為一個列表去擴展列表的末尾。
  
請看以下示例:

  1. >>> name = ['F', 'i', 's', 'h']
  2. >>> name.append('C')
  3. >>> name
  4. ['F', 'i', 's', 'h', 'C']
  5. >>> name.extend(['.', 'c'])
  6. >>> name
  7. ['F', 'i', 's', 'h', 'C', '.', 'c']
  8. >>> name.append(['o', 'm'])
  9. >>> name
  10. ['F', 'i', 's', 'h', 'C', '.', 'c', ['o', 'm']]
復制代碼



3. member.append(['竹林小溪', 'Crazy迷戀']) 和 member.extend(['竹林小溪', 'Crazy迷戀']) 實現的效果一樣嗎?

  
不一樣,因為怕大家沒有仔細看上一題的示例,所以不懂的請看上一題解釋。
  
  
4. 有列表 name = ['F', 'i', 'h', 'C'],如果小甲魚想要在元素 'i' 和 'h' 之間插入元素 's',應該使用什么方法來插入?
  
name.insert(2, 's')

  
  
動動手答案:
  

本帖隱藏的內容

0. 自己動手試試看,並分析在這種情況下,向列表添加數據應當采用哪種方法比較好?

假設給定以下列表:

member = ['小甲魚', '黑夜', '迷途', '怡靜', '秋舞斜陽']

要求將列表修改為:

member = ['小甲魚', 88, '黑夜', 90, '迷途', 85, '怡靜', 90, '秋舞斜陽', 88]

方法一:使用 insert() 和 append() 方法修改列表。

方法二:重新創建一個同名字的列表覆蓋。


解答:

方法一:

  1. member.insert(1, 88)
  2. member.insert(3, 90)
  3. member.insert(5, 85)
  4. member.insert(7, 90)
  5. member.append(88)
復制代碼

方法二:

  1. member = ['小甲魚', 88, '黑夜', 90, '迷途', 85, '怡靜', 90, '秋舞斜陽', 88]
復制代碼

對於這種情況,明顯是第二種方法看起來要好一些嘛。

不過對於大型的列表,第一種方法可能更合適,所以我們說永遠沒有最好的,只有最合適的。
  
  
  
1. 利用 for 循環打印上邊 member 列表中的每個內容

  1. member = ['小甲魚', 88, '黑夜', 90, '迷途', 85, '怡靜', 90, '秋舞斜陽', 88]
  2. for each in member:
  3.     print(each)
復制代碼



2. 上一題打印的樣式不是很好,能不能修改一下代碼打印成下圖的樣式呢?【請至少使用兩種方法實現】

  1. 方法一:
  2. count = 0
  3. length = len(member)
  4. while count < length:
  5.     print(member[count], member[count+1])
  6.     count += 2

  7. 方法二:   
  8.    
  9. for each in range(len(member)):
  10.     if each%2 == 0:
  11.         print(member[each], member[each+1])
復制代碼



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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM