1. 程式人生 > >第010講:列表:一個打了激素的陣列1 | 學習記錄(小甲魚零基礎入門學習Python)

第010講:列表:一個打了激素的陣列1 | 學習記錄(小甲魚零基礎入門學習Python)

(標答出處: 魚C論壇)
《零基礎入門學習Python》

基礎題:
測試題:

  1. 列表都可以存放一些什麼東西?

    列表可以存放整型數字,字串,浮點型數字,還有列表

  2. 向列表增加元素有哪些方法?

    append() 新增單個元素
    extend () 新增多個元素
    inset () 在制定位置插入元素

  3. append() 方法和 extend() 方法都是向列表的末尾增加元素,請問他們有什麼區別?

    append() 一次只能新增單個元素,而extend () 一次可以新增多個元素

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

    不一樣, append一次新增的是一個引數,所以他會把兩個合併成一個新的小列表,載入member列表中,而 extend則是分為兩個元素新增在其中。

  5. 有列表 name = [‘F’, ‘i’, ‘h’, ‘C’],如果小甲魚想要在元素 ‘i’ 和 ‘h’ 之間插入元素 ‘s’,應該使用什麼方法來插入?

    使用insert(2,‘s’)來插入,在name[2]處新增‘s’

動動手:

  1. 自己動手試試看,並分析在這種情況下,向列表新增資料應當採用哪種方法比較好?

假設給定以下列表:

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

要求將列表修改為:

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

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

>>> member.insert(1,80);member.insert(3,90);member.insert(5,85);member.insert(7,90);member.append(80)

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

>>> member = ['小甲魚',80,'黑夜',90,'迷途',85,'怡靜',90,'秋舞斜陽',88]
  1. 利用 for 迴圈列印上邊 member 列表中的每個內容,如圖:
>>> for i in member:
	print (i)
  1. 上一題列印的樣式不是很好,能不能修改一下程式碼列印成下圖的樣式呢?【請至少使用兩種方法實現】
member = ['小甲魚', 88, '黑夜', 90, '迷途', 85, '怡靜', 90, '秋舞斜陽', 88]
count = 0
length = len(member)
while count < length:
    print(member[count], member[count+1])
    count += 2
  1. 注意,這道題跟上節課的那道題有點兒不同,回答完請上機實驗或參考答案。

old = [1, 2, 3, 4, 5]
new = old
old = [6]
print(new)
如果不上機操作,你覺得會列印什麼內容?

new = [1,2,3,4,5]

標答:

測試題答案:

本帖隱藏的內容
0. 列表都可以存放一些什麼東西?

我們說 Python 的列表是一個打了激素的陣列,如果把陣列比喻成集裝箱,那麼 Python 的列表就是一個大倉庫,Ta 可以存放我們已經學習過的任何資料型別。

mix = [1, ‘小甲魚’, 3.14, [1, 2, 3]]

  1. 向列表增加元素有哪些方法?

這節課我們教過大家三種方法想列表增加元素,分別是:append()、extend() 和 insert()。

  1. 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’]]
    複製程式碼

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

不一樣,因為怕大家沒有仔細看上一題的示例,所以不懂的請看上一題解釋。

  1. 有列表 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 列表中的每個內容
    member = ['小甲魚', 88, '黑夜', 90, '迷途', 85, '怡靜', 90, '秋舞斜陽', 88] for each in member: print(each)
  2. 上一題列印的樣式不是很好,能不能修改一下程式碼列印成下圖的樣式呢?【請至少使用兩種方法實現】
    方法一:
		count = 0
	length = len(member)
    while count < length:
	    print(member[count], member[count+1])
	    count += 2    
member = ['小甲魚', 88, '黑夜', 90, '迷途', 85, '怡靜', 90, '秋舞斜陽', 88]
for each in member:
	    print(each)

複製程式碼
4. 注意,這道題跟上節課的那道題有點兒不同,回答完請上機實驗或參考答案。

old = [1, 2, 3, 4, 5]
new = old
old = [6]
print(new)

如果不上機操作,你覺得會列印什麼內容?