清理字符串的最佳 pythonic 方法
The best pythonic way to clean a string
我有一个像这样的字符串:
inconnue
(1h 30min)
我正在寻找最好的 pythonic 方式(优雅的方式)从充满 space 和断行 [=13] 的字符串中提取这两个字符串 inconnue
和 1h 30min
=]
string.splitlines()
会给你一个行列表,然后要删除空格,你可以使用 .strip()
。例如:stripped_list = map(str.strip, unstripped_list)
。您可以将两者合并 lines = map(str.strip, string.splitlines())
使用strip
和splitlines
:
>>> lines = " inconnue\n (1h 30min)"
>>> [s.strip() for s in lines.splitlines()]
将导致
['inconnue', '(1h 30min)']
在列表理解中使用 str.splitlines()
和 str.strip()
:
>>> string = """ inconnue
... (1h 30min)"""
>>> [s.strip() for s in string.splitlines()]
['inconnue', '(1h 30min)']
你可以这样做:
map(str.strip,a.strip().split(" ",1))
它returns下面的数组,假设您想确定未知(inconnue
)状态的持续时间
,您可以进一步解析
['inconnue', '(1h 30 min)']
我有一个像这样的字符串:
inconnue
(1h 30min)
我正在寻找最好的 pythonic 方式(优雅的方式)从充满 space 和断行 [=13] 的字符串中提取这两个字符串 inconnue
和 1h 30min
=]
string.splitlines()
会给你一个行列表,然后要删除空格,你可以使用 .strip()
。例如:stripped_list = map(str.strip, unstripped_list)
。您可以将两者合并 lines = map(str.strip, string.splitlines())
使用strip
和splitlines
:
>>> lines = " inconnue\n (1h 30min)"
>>> [s.strip() for s in lines.splitlines()]
将导致
['inconnue', '(1h 30min)']
在列表理解中使用 str.splitlines()
和 str.strip()
:
>>> string = """ inconnue
... (1h 30min)"""
>>> [s.strip() for s in string.splitlines()]
['inconnue', '(1h 30min)']
你可以这样做:
map(str.strip,a.strip().split(" ",1))
它returns下面的数组,假设您想确定未知(inconnue
)状态的持续时间
['inconnue', '(1h 30 min)']