日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
什么叫做類比,為什么有些 Python 入門教程結(jié)構(gòu)不合理

想必關(guān)注未聞 Code的同學(xué)或多或少都在網(wǎng)上看過各種各樣的 Python 入門教程。這些教程在講 Python 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)的時(shí)候,一般是按照下面這個(gè)模式來講的:

  • 數(shù)字、字符串、浮點(diǎn)數(shù)
  • 列表
  • 字典
  • 集合

這個(gè)結(jié)構(gòu)雖然說是中規(guī)中矩由淺入深,但是它并沒有讓讀者做到類比學(xué)習(xí)觸類旁通。

所謂類比

為什么這樣說呢?因?yàn)檫@些教程的教學(xué)模式,使得讀者不容易發(fā)現(xiàn)字符串、列表、元組的相同之處。

我們從“讀”這個(gè)角度來看看這三個(gè)數(shù)據(jù)結(jié)構(gòu)。假設(shè)有一個(gè)字符串叫做a,有一個(gè)列表叫做b,有一個(gè)元組叫做c。那么大家請(qǐng)看如下的操作。

(1) 按索引讀取元素

 
 
 
 
  1. a[0]  # 字符串第一個(gè)字符 
  2. b[0]  # 列表第一個(gè)元素 
  3. c[0]  # 元組第一個(gè)元素 
  4.  
  5. a[3]  # 字符串第4個(gè)字符 
  6. b[3]  # 列表第4個(gè)元素 
  7. c[3]  # 元組第4個(gè)元素 
  8.  
  9. a[-1]  # 字符串最后一個(gè)字符 
  10. b[-1]  # 列表最后一個(gè)元素 
  11. c[-1]  # 元組最后一個(gè)元素 

按索引讀取元素這個(gè)操作,字符串、列表和元組完全相同。

(2) 切片

 
 
 
 
  1. a[1: 4]  # 讀取字符串第2、3、4個(gè)字符 
  2. b[1: 4]  # 讀取列表第2、3、4個(gè)元素 
  3. c[1: 4]  # 讀取元組第2、3、4個(gè)元素 
  4.  
  5. a[: 4]  # 讀取字符串前4個(gè)字符 
  6. b[: 4]  # 讀取列表前4個(gè)元素 
  7. c[: 4]  # 讀取元組前4個(gè)元素 
  8.  
  9. a[-3: ]  # 讀取字符串最后3個(gè)字符 
  10. b[-3: ]  # 讀取列表最后3個(gè)元素 
  11. c[-3: ]  # 讀取元組最后3個(gè)元素 

切片這個(gè)操作,字符串、列表和元組完全相同。

(3) 循環(huán)迭代

 
 
 
 
  1. for char in a:  # 對(duì)字符串進(jìn)行迭代 
  2.     print(char) 
  3.  
  4. for element in b:  # 對(duì)列表進(jìn)行迭代 
  5.     print(element) 
  6.  
  7. for element in c:  # 對(duì)元組進(jìn)行迭代 
  8.     print(element) 

循環(huán)迭代這個(gè)操作,字符串、列表和元組完全相同。

(4) 倒序輸出

 
 
 
 
  1. a[::-1]  # 把字符串倒序  
  2. b[::-1]  # 把列表倒序 
  3. c[::-1]  # 把元組倒序 

運(yùn)行效果如下圖所示:

倒序輸出這個(gè)操作,字符串、列表和元組完全相同。

(5) 元素是否在里面

 
 
 
 
  1. if 'x' in a: 
  2.     print('字符 x 在字符串中!') 
  3.  
  4. if 3 in b: 
  5.     print('元素 3 在列表中!') 
  6.  
  7. if 3 in c: 
  8.     print('元素 3 在元組中!') 

判斷一個(gè)字符是否在字符串中,或者判斷一個(gè)元素是否在列表、元組中,操作完全相同。

(6) 查找索引

 
 
 
 
  1. a = 'hello' 
  2. index = a.index('e') 
  3. print('字符e 在字符串中的索引為:', index) 
  4.  
  5. b = ['kingname', 'pm', 'ui', 'spider'] 
  6. index = b.index('pm') 
  7. print('元素pm在列表中的索引為:', index) 
  8.  
  9. c = ('kingname', 'pm', 'ui', 'spider') 
  10. index = c.index('pm') 
  11. print('元素pm在元組中的索引為:', index) 

運(yùn)行效果如下圖所示:

查詢子字符串在字符串中的索引,或者根據(jù)元素查詢其在列表、元組中的索引,操作完全相同。

(7) 統(tǒng)計(jì)出現(xiàn)次數(shù)

 
 
 
 
  1. a = 'helloworld' 
  2. num = a.count('l') 
  3. print('字符 l 在字符串中出現(xiàn)的次數(shù)為:', num) 
  4.  
  5. b = ['kingname', 'pm', 'ui', 'pm', 'spider'] 
  6. num = b.count('pm') 
  7. print('元素 pm 在列表中出現(xiàn)的次數(shù)為:', num) 
  8.  
  9. c = ('kingname', 'pm', 'ui', 'pm', 'spider') 
  10. num = c.count('pm') 
  11. print('元素pm 在元組中出現(xiàn)的次數(shù)為:', num) 

運(yùn)行效果如下圖所示:

統(tǒng)計(jì)出現(xiàn)次數(shù),這個(gè)操作對(duì)字符串、列表和元組完全相同。

(8) 拼接操作

 
 
 
 
  1. a = 'hello' 
  2. b = 'world' 
  3. print(a + b) 
  4.  
  5. a = [1, 2, 3] 
  6. b = [4, 5, 6] 
  7. print(a + b) 
  8.  
  9. a = (1, 2, 3) 
  10. b = (4, 5, 6) 
  11. print(a + b) 

運(yùn)行效果如下圖所示:

加號(hào)拼接這個(gè)操作,字符串、列表和元組完全相同。

總結(jié)在“讀”這個(gè)操作上面,字符串、列表、元組是完全相同的,只要掌握了其中一個(gè),另外兩個(gè)自動(dòng)就知道怎么操作了。這就叫做類比。

先學(xué)習(xí)了相同的操作,再來分別學(xué)習(xí)每個(gè)數(shù)據(jù)結(jié)構(gòu)各自獨(dú)特的操作,這樣才能做到事半功倍,舉一反三。

令人遺憾的是,目前市面上絕大部分的 Python 教程,都沒有做到這一點(diǎn)。


文章題目:什么叫做類比,為什么有些 Python 入門教程結(jié)構(gòu)不合理
URL網(wǎng)址:http://www.5511xx.com/article/ccisjcd.html