用屏蔽simbols、python过滤原始字符串

2024-10-01 07:15:26 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有机会从下面的原始字符串中获得城市名称而不需要大量迭代?你知道吗

'\nSegelbåt \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\
t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tÄlvsborg\n\t\t\t\t\t\t\t\t
\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t'

'\nSegelbåt \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t
\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tÄlvsborg\n\t\t\t\
t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t', 

'\nButik\nSegelbåt \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tStockholm\n\t\t\t\t\
t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\
t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t'

需要得到阿尔夫斯堡、斯德哥尔摩等,那是一个城市、城镇的名字。库斯的名字不一样

函数已经有大量的迭代,所以构建或附加函数/方法更可取。你知道吗

也可以按以下格式获取:


SegelbåtÄlvsborg
ButikSegelbåtStockholm
ButikSegelbåtStockholm
SegelbåtJönköping
SegelbåtGöteborg
ButikSegelbåtGöteborg
ButikSegelbåtGöteborg
SegelbåtSkaraborg
SegelbåtStockholm
SegelbåtStockholm
SegelbåtHalland
SegelbåtStockholm
ButikSegelbåtHelsingborg
SegelbåtStockholm
ButikSegelbåtKalmar
SegelbåtGöteborg
ButikSegelbåtGöteborg
ButikSegelbåtÖstergötland
ButikSegelbåt
ButikSegelbåtGöteborg
ButikSegelbåtGöteborg
ButikSegelbåtGöteborg
ButikSegelbåtGöteborg
SegelbåtStockholm
ButikSegelbåtHelsingborg
SegelbåtKalmar
SegelbåtGöteborg

但这并不能让工作更轻松。你知道吗

谢谢你!你知道吗

另外,我可以把字母和隐藏符号分开,比如在循环中:

letters = ''.join(filter(lambda x: False if x.isspace() else True,
                                     place.get_text()

在那之后,我仍然需要以某种方式把城市的名字分开。。。你知道吗


Tags: 函数字符串名称tg名字机会tstockholmnsegelb
1条回答
网友
1楼 · 发布于 2024-10-01 07:15:26

您可以使用str.split

In [1]: s = '\nSegelbåt \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tÄlvsborg\n\t\t\t\t\t\t\t\t\
  ... t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t'

In [2]: s.split()  # when called with no argument it splits on all whitespace
Out[2]: ['Segelbåt', 'Älvsborg']

城市名称似乎是最后一个元素:

In [3]: s.split()[-1]
Out[3]: 'Älvsborg'

看起来你在用BeautifulSoup解析HTML。您可能会发现直接选择适当的元素比解析.get_text()生成的内容更容易。你知道吗

相关问题 更多 >