自學(xué)Python編程【第二十五節(jié)】list切片
同學(xué)們,你們好!歡迎您來到自學(xué)Python編程第二十五講,上一節(jié)課我們學(xué)習(xí)了操作list的相關(guān)內(nèi)容,知道了如何使用list去調(diào)用、去增加或者刪除,這節(jié)課我們帶大家來了解list切片。
list有兩類常用操作:索引(index)和切片(slice)。
上一講我們說的用[]加序號訪問的方法就是索引操作。
除了指定位置進(jìn)行索引外,list還可以處理負(fù)數(shù)的索引。繼續(xù)用上一講的例子:
l = [365, 'everyday', 0.618, True]
l[-1]表示l中的最后一個(gè)元素。
l[-3]表示倒數(shù)第3個(gè)元素。
切片操作符是在[]內(nèi)提供一對可選數(shù)字,用:分割。冒號前的數(shù)表示切片的開始位置,冒號后的數(shù)字表示切片到哪里結(jié)束。同樣,計(jì)數(shù)從0開始。
注意,開始位置包含在切片中,而結(jié)束位置不包括。
l[1:3]
得到的結(jié)果是['everyday', 0.618]。
如果不指定第一個(gè)數(shù),切片就從列表第一個(gè)元素開始。
如果不指定第二個(gè)數(shù),就一直到最后一個(gè)元素結(jié)束。
都不指定,則返回整個(gè)列表的一個(gè)拷貝。
l[:3]
l[1:]
l[:]
同索引一樣,切片中的數(shù)字也可以使用負(fù)數(shù)。比如:
l[1:-1]
得到['everyday', 0.618]

精彩案例——點(diǎn)球小游戲
昨天有了一次罰球的過程,今天我就讓它循環(huán)5次,并且記錄下得分。先不判斷勝負(fù)。
用score_you表示你的得分,score_com表示電腦得分。開始都為0,每進(jìn)一球就加1。
from random import choice
score_you = 0
score_com = 0
direction = ['left', 'center', 'right']
for i in range(5):
print '==== Round %d - You Kick! ====' % (i+1)
print 'Choose one side to shoot:'
print 'left, center,
right' you = raw_input()
print 'You kicked ' + you
com = choice(direction)
print 'Computer saved ' + com
if you != com:
print 'Goal!'
score_you += 1
else:
print 'Oops...'
print 'Score: %d(you) - %d(com)n' % (score_you, score_com)
print '==== Round %d - You Save! ====' % (i+1)
print 'Choose one side to save:'
print 'left, center, right'
you = raw_input()
print 'You saved ' + you
com = choice(direction)
print 'Computer kicked ' + com
if you == com: print 'Saved!'
else:
print 'Oops...'
score_com += 1
print 'Score: %d(you) - %d(com)n' % (score_you, score_com)
注意:手機(jī)上代碼有可能會被換行。
這段代碼里有兩段相似度很高,想想是不是可以有辦法可以用個(gè)函數(shù)把它們分離出來。

恭喜您在Python自學(xué)的道路上又堅(jiān)持了一天,我們今天所講述的list切片你學(xué)會了嗎?現(xiàn)在你知道l[0:2]會輸出什么了嗎?不知道的話還不趕緊去試試?更多Python精彩內(nèi)容盡在馬哥Python培訓(xùn)機(jī)構(gòu)官網(wǎng),敬請關(guān)注!
好啦,今天的分享到這里就結(jié)束了,希望大家能夠持續(xù)關(guān)注馬哥教育官網(wǎng),每天都會有大量優(yōu)質(zhì)內(nèi)容與大家分享!免責(zé)聲明:內(nèi)容和圖片源自網(wǎng)絡(luò),版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請告知,我們將盡快刪除相關(guān)內(nèi)容。
聲明:文章來源于網(wǎng)絡(luò),侵刪!