Python編程字符串的分割是怎樣的呢?
今天小編要跟大家分享的文章是Python編程字符串的分割是怎樣的呢?上一節(jié)我們講了list切片的相關內(nèi)容,你都學會了嗎? 這節(jié)課我們來學習字符串的分割的相關知識,Python入門新手和正在Python學習的小伙伴快來看一看吧,希望能夠?qū)Υ蠹矣兴鶐椭?!
還記得L[:2]會輸出什么嗎?不知道的話要盡快回顧復習上一節(jié)課程的內(nèi)容哦!
字符串和list之間有很多不得不說的事。比如有同學想要用Python去自動抓取某個網(wǎng)頁上的下載鏈接,那就需要對網(wǎng)頁的代碼進行處理。處理的過程中,免不了要在字符串和list之間進行很多操作。
我們先從最基本的開始。假設你現(xiàn)在拿到了一個英語句子,需要把這個句子中的每一個單詞拿出來單獨處理。
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輪結(jié)束之后是平分,就繼續(xù)踢。
所以我們把一輪的過程單獨拿出來作為一個函數(shù)kick,在5次循環(huán)之后再加上一個while循環(huán)。
另外,這里把之前的score_you和score_com合并成了一個score數(shù)組。這里的原因是,要讓kick函數(shù)里用到外部定義的變量,需要使用全局變量的概念。暫時想避免說這個,而用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編程字符串的分割是怎樣的文章,希望本篇文章能夠?qū)φ?Python學習?和從事Python相關工作的小伙伴們有所幫助,想要了解更多相關知識記得關注馬哥教育官網(wǎng),每天都會有大量優(yōu)質(zhì)內(nèi)容與大家分享!
聲明:文章來源于網(wǎng)絡,如有侵權(quán)請聯(lián)系刪除!