總結:split()的時候,多個空格當成一個空格;split(' ')的時候,多個空格也要分割,會分割出來空。
例1:
牛客網:牛客最近來了一個新員工Fish,每天早晨總是會拿着一本英文雜志,寫些句子在本子上。同事Cat對Fish寫的內容頗感興趣,有一天他向Fish借來翻看,但卻讀不懂它的意思。例如,“student. a am I”。后來才意識到,這家伙原來把句子單詞的順序翻轉了,正確的句子應該是“I am a student.”。Cat對一一的翻轉這些單詞順序可不在行,你能幫助他么?
這樣的代碼就可以通過:
s='student a am I' s=' ' if not s : print(s) s=s.split(' ') result=[] for i in range(len(s)-1,-1,-1): result.append(s[i]) if i:#最后一個位置不需要加空格 result.append(' ') m=''.join(result) length=(len(m)) print(m) print(length)
輸出:
1
如果把split(' ')中的空格去掉,就處理不了輸入為空的情況:
s='student a am I' s=' ' if not s : print(s) s=s.split() result=[] for i in range(len(s)-1,-1,-1): result.append(s[i]) if i:#最后一個位置不需要加空格 result.append(' ') m=''.join(result) length=(len(m)) print(m) print(length)
輸出:
0
例2:
用split()測試一下看看:
s0='we are students'#一個空格 s1='we are students'#兩個空格 s2='we are students'#三個空格 s3='we are students'#四個空格 s0=s0.split() print(s0) print(len(s0)) s1=s1.split() print(s1) print(len(s1)) s2=s2.split() print(s2) print(len(s2)) s3=s3.split() print(s3) print(len(s3))
輸出為:
['we', 'are', 'students'] 3 ['we', 'are', 'students'] 3 ['we', 'are', 'students'] 3 ['we', 'are', 'students'] 3
用split(' ')測試一下看看:
s0='we are students'#一個空格 s1='we are students'#兩個空格 s2='we are students'#三個空格 s3='we are students'#四個空格 s0=s0.split(' ') print(s0) print(len(s0)) s1=s1.split(' ') print(s1) print(len(s1)) s2=s2.split(' ') print(s2) print(len(s2)) s3=s3.split(' ') print(s3) print(len(s3))
輸出:
['we', 'are', 'students'] 3 ['we', 'are', '', 'students'] 4 ['we', 'are', '', '', 'students'] 5 ['we', 'are', '', '', '', 'students'] 6
