自學Python編程【第二十六節】字符串的分割
哈嘍,同學們!上一節我們講了list切片的相關內容,你都學會了嗎?還記得L[:2]會輸出什么嗎?不知道的話要盡快回顧復習上一節課程的內容哦!這節課我們來學習字符串的分割的相關知識,想要Python入門和Python學習的小伙伴可要好好看看啦~
字符串和list之間有很多不得不說的事。比如有同學想要用Python去自動抓取某個網頁上的下載鏈接,那就需要對網頁的代碼進行處理。處理的過程中,免不了要在字符串和list之間進行很多操作。
我們先從最基本的開始。假設你現在拿到了一個英語句子,需要把這個句子中的每一個單詞拿出來單獨處理。
sentence = 'I am an Englist sentence'
這時就需要對字符串進行分割。
sentence.split()
split()會把字符串按照其中的空格進行分割,分割后的每一段都是一個新的字符串,最終返回這些字符串組成一個list。于是得到
['I', 'am', 'an', 'Englist', 'sentence']
原來字符串中的空格不再存在。
除了空格外,split()同時也會按照換行符\n,制表符\t進行分割。所以應該說,split默認是按照空白字符進行分割。
之所以說默認,是因為split還可以指定分割的符號。比如你有一個很長的字符串
section = 'Hi. I am the one. Bye.'
通過指定分割符號為'.',可以把每句話分開
section.split('.')
得到
['Hi', ' I am the one', ' Bye', '']
這時候,'.'作為分割符被去掉了,而空格仍然保留在它的位置上。
注意最后那個空字符串。每個'.'都會被作為分割符,即使它的后面沒有其他字符,也會有一個空串被分割出來。例如
'aaa'.split('a')
將會得到['', '', '', ''],由四個空串組成的list。
既然有把字符串分割成list,那也相應就有把list連接成字符串,這個明天說。
精彩案例—— 點球小游戲
在昨天代碼的基礎上,我們加上勝負判斷,如果5輪結束之后是平分,就繼續踢。
所以我們把一輪的過程單獨拿出來作為一個函數kick,在5次循環之后再加上一個while循環。
另外,這里把之前的score_you和score_com合并成了一個score數組。這里的原因是,要讓kick函數里用到外部定義的變量,需要使用全局變量的概念。暫時想避免說這個,而用list不存在這個問題。
from random import choice
score = [0, 0]
direction = ['left', 'center', 'right']
def kick():
print '==== You Kick! ===='
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[0] += 1
else:
print 'Oops...'
print 'Score: %d(you) - %d(com)\n' % (score[0], score[1])
print '==== You Save! ===='
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[1] += 1
print 'Score: %d(you) - %d(com)\n' % (score[0], score[1])
for i in range(1):
print '==== Round %d ====' % (i+1)
kick()
while(score[0] == score[1]):
i += 1
print '==== Round %d ====' % (i+1)
kick()
if score[0] > score[1]: print 'You Win!'
else:
print 'You Lose.'
恭喜你在Python自學的道路上又堅持了一天,今天我們所講述的字符串的分割你學會了嗎?split(),默認以空格為分割界限,當然你還可以指定分割條件,將條件寫到()中就可以了,你學會了嗎?更多Python相關的內容盡在馬哥Python培訓機構官網,敬請關注!
好啦,今天的分享到這里就結束了,希望大家能夠持續關注馬哥教育官網,每天都會有大量優質內容與大家分享!
聲明:文章來源于網絡,侵刪!