1樓:人工智慧 曾
我不太確定問的是啥問題,但還是說一下字串的拆分問題。
字串的拆分有專用的方法:
str.split(sep=None, maxsplit=-1)
用sep分拆字串,返回乙個單詞列表。maxsplit指定最大分拆次數(這樣列表就有maxsplit+1個元素),如果maxsplit沒有指定就使用預設值-1,分拆次數則不受限制。
>>> '1,2,3'.split(',', maxsplit=1)
['1', '2,3']
如果給出了引數sep,連續分隔符不會當成一組,而是被分割成空字串:
>>> '1,2'.split(','); '1,,2'.split(','); '1,,,2'.split(',')
['1', '2']
['1', '', '2']
['1', '', '', '2']
引數sep可以有多個字元組成:
>>> '1<>2<>3'.split('<>')
['1', '2', '3']
用指定分隔符分拆空的字串返回乙個空字串列表['']:
>>> ''.split(',')
['']
如果沒有給出引數sep就使用預設值None,這時使用了不同的演算法:
連續空格被視為乙個單獨的分隔符,如果字串有前導空格或尾綴空格,結果將不包含開頭或結尾的空字串。用乙個None來拆分空字串或僅包含空格組成的字串,返回乙個空列表。
>>> '1 2 3'.split()
['1', '2', '3']
>>> ' 1 2 3 '.split()
['1', '2', '3']
>>> '1 2 3'.split(maxsplit=1)
['1', '2 3']
>>> ''.split()
>>> ' '.split()
str.rsplit(sep=None, maxsplit=-1)
類似拆分方法split,不同的是檢索的方向是從右往左:
>>> 'abcdaaa'.rsplit('a',1)
['abcdaa', '']
str.splitlines([keepends])
在行的邊界處將行拆分,返回乙個各行組成的列表。如果keepends為True,列表中的拆分的行將包含分界符,否則不會包含。
>>> 'ab c\n\nde fg\rkl\r\n'.splitlines()
['ab c', '', 'de fg', 'kl']
>>> 'ab c\n\nde fg\rkl\r\n'.splitlines(keepends=True)
['ab c\n', '\n', 'de fg\r', 'kl\r\n']
下表列出了用於拆分的行邊界符,它是換行符的超集(行分界符包含了所有的換行符)
邊界符含義
\n換行
\r回車,移到行首
\r\n
回車同時進一行
\v或\x0b
行製表符
\f或\x0c
換表單\x1c
檔案分隔符
\x1d
組分隔符
\x1e
記錄分隔符
\x85
下一行(C1控制碼)
\u2028
行分隔符
\u2029
段落分隔符
與split()比較一下:
>>> "".splitlines(); "".split(); "".split('\nལ']
>>> "One line\n".splitlines(); 'One line\n'.split('\n')
['One line']
['One line', '']
2樓:生物危險
defmain
():a
=input
('輸入數(用逗號隔開):'
)returna.
split
(','
);main()
3樓:大寶
str_="1234"
list_=
for i in str_:
print(list)
str_="1234"
list_=
for i in range(0,len(str_)):
print(list)
4樓:
lst=[
int(n)
forn
in'1,2,3,4'
.split
(','
)]lst
=list
(map
(int
,'1,2,3,4'
.split
(',')))
Python當中slice和split有什麼區別,分別怎麼使用?
Stevent Slice首先大家想到的是列表切片的用法比如lyst 3 6 但是你把slice和split放在一起問,顯然你問的不是列表切片的用法。你問的是slice 函式。slice 語法 class slice stop class slice start,stop step 引數說明 sta...
Python學渣求問
Python確實很強大,資料獲取,web scraping,data analyst,data wrangling什麼的,進入Data Science世界,少不了接觸python Yang Deliang 只能說你的學習方式太浮躁了。計算機本質離不開計算機組成及原理,資料結構,演算法,編譯原理,設計...
如何使用python中timedelta這個類實現月份的累加。
首先這個問題用timedelta沒有直接的實現方法,給你兩個造好的輪子,你看哪個爽用哪個 import datetime z datetime.datetime 2016,12,17 1.import dateutil z dateutil.relativedelta.relativedelta m...