gpt4 book ai didi

python - 在新行、制表符和一些空格上拆分字符串

转载 作者:IT老高 更新时间:2023-10-28 21:41:11 26 4
gpt4 key购买 nike

我正在尝试对一组看起来像这样的不规则数据执行字符串拆分:

\n\tName: John Smith
\n\t Home: Anytown USA
\n\t Phone: 555-555-555
\n\t Other Home: Somewhere Else
\n\t Notes: Other data
\n\tName: Jane Smith
\n\t Misc: Data with spaces

我想把它转换成一个元组/字典,稍后我将在冒号 : 上拆分,但首先我需要去掉所有额外的空格。我猜正则表达式是最好的方法,但我似乎无法找到一个有效的方法,下面是我的尝试。

data_string.split('\n\t *')

最佳答案

只需使用 .strip() ,它会在拆分时为您删除所有空格,包括制表符和换行符。然后可以使用 data_string.splitlines() 完成拆分本身。 :

[s.strip() for s in data_string.splitlines()]

输出:

>>> [s.strip() for s in data_string.splitlines()]
['Name: John Smith', 'Home: Anytown USA', 'Phone: 555-555-555', 'Other Home: Somewhere Else', 'Notes: Other data', 'Name: Jane Smith', 'Misc: Data with spaces']

您现在甚至可以在 : 上内联拆分:

>>> [s.strip().split(': ') for s in data_string.splitlines()]
[['Name', 'John Smith'], ['Home', 'Anytown USA'], ['Phone', '555-555-555'], ['Other Home', 'Somewhere Else'], ['Notes', 'Other data'], ['Name', 'Jane Smith'], ['Misc', 'Data with spaces']]

关于python - 在新行、制表符和一些空格上拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12533955/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com