若你使用過 Shell 中的 awk 工具,會發(fā)現(xiàn)用它來分割字符串是非常方便的。特別是多個連續(xù)空格會被當做一個處理。

可是轉(zhuǎn)換到 Python 上面來呢?結(jié)果可能是這樣的。

與我預(yù)想的結(jié)果不符,多個空格會被分割多次。
那有什么辦法可以達到 awk 一樣的效果呢?
有兩種方法。
第一種方法
不加參數(shù),這種只適用于將多個空格當成一個空格處理,如果不是以空格為分隔符的場景,這種就不適用了。

第二種方法
使用 filter 來輔助,這種適用于所有的分隔符,下面以 - 為分隔符來舉例。

是不是很神奇,filter 印象中第一個參數(shù)接收的是 函數(shù),這里直接傳 None 居然有奇效。

查看了注釋,原來是這個函數(shù)會適配 None 的情況,當?shù)谝粋€參數(shù)是None的時候,返回第二個參數(shù)(可迭代對象)中非空的值,非常方便。
換用函數(shù)的寫法,可以這樣

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
字符串
+關(guān)注
關(guān)注
1文章
596瀏覽量
23171 -
python
+關(guān)注
關(guān)注
57文章
4877瀏覽量
90071 -
Shell
+關(guān)注
關(guān)注
1文章
375瀏覽量
25400
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
2.2 python字符串類型
2.2 python字符串類型1. 如何定義字符串?字符串是Python中最常用的數(shù)據(jù)類型之一。使用單引號或雙引號來創(chuàng)建
發(fā)表于 02-17 17:12
python字符串拼接方式了解
python字符串拼接的方式 在Python的實際開發(fā)中,很多都需要用到字符串拼接,python中字符串
發(fā)表于 12-06 10:09
?1186次閱讀
python基礎(chǔ)教程之Python學(xué)習(xí)入門字符串的詳細程序資料說明
Python 字符串操作,如string替換、刪除、截取、復(fù)制、連接、比較、查找、包含、大小寫轉(zhuǎn)換、分割等。
發(fā)表于 10-30 19:13
?8次下載
什么是復(fù)制字符串?Python如何復(fù)制字符串
連續(xù)幾篇文章都在寫 Python 字符串,這出乎我的意料了。但是,有的問題,不寫不行,特別是那種靈機一動想到的問題,最后你發(fā)現(xiàn),很多人根本不懂卻又誤以為自己懂了。那就繼續(xù)刨根問底,探究個明白吧
發(fā)表于 11-25 10:32
?3538次閱讀
2.2 python字符串類型
2.2 python字符串類型 1. 如何定義字符串? 字符串是Python中最常用的數(shù)據(jù)類型之一。 使用單引號或雙引號來創(chuàng)建
python字符串有哪些特定方法
python字符串序列操作也適用于列表和元組。
python字符串還有獨有方法,即字符串對象的函數(shù),其他對象不可調(diào)用,只有
python輸出固定長度的字符串
Python 是一種強大而靈活的編程語言,具有許多用于處理字符串的功能。在 Python 中,有多種方法可以輸出固定長度的字符串。下面將詳細介紹這些方法。 方法一:使用
oracle字符串split成多個
Oracle是一種廣泛使用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它提供了許多強大的功能和函數(shù),用于處理和操作數(shù)據(jù)。其中之一就是字符串分割(split)方法,該方法用于將一個字符串按照指定的分隔符分割
在Python中字符串逆序有幾種方式,代碼是什么
對于一個給定的字符串,逆序輸出,這個任務(wù)對于python來說是一種很簡單的操作,畢竟強大的列表和字符串處理的一些列函數(shù)足以應(yīng)付這些問題 了,今天總結(jié)了一下python中對于
新手必知的Python:分割字符串的步驟及源代碼
評論