python - 删除字符串的隐藏部分时遇到问题

标签 python beautifulsoup

我正在尝试在简单的计算中将刮取的字符串BeautifulSoup结合使用。解释器给出 base 10 错误,表明字符串中存在隐藏字符。

事实证明这是正确的,因为控制台将包含隐藏数据的原始字符串输出为:

2.177
['\n\n2.177']

2.177 是我在这里尝试使用的号码。 ['\n\n2.177'] 是字符串的隐藏部分。由于隐藏值,它不会转换为 int,但我无法对其进行任何计算。

我已经查找了一些从字符串中删除隐藏字符的方法,但到目前为止 stackoverflow 似乎只提供了有关删除特殊隐藏字符的答案。

遗憾的是我的并不特别。有谁知道如何删除这部分字符串?

最佳答案

根据澄清,字符串的内容看起来是“\n\n2.177”,即有两个前导换行符。在这种情况下,问题不在于换行符,而在于 2.177 确实不是 int 的有效表示。 int("\n\n2.177")int("2.177") 都给出 ValueError: invalid Literal for int() with base 10: ' 2.177'

要回答您的直接问题,您可以使用字符串上的 strip 方法去除前导和尾随空格,例如vacancy_amount.strip()

也许您打算获取一个 float ,在这种情况下,float(vacancy_amount) 将为您提供 2.177。如果您想进一步将其转换为整数,可以尝试 int(float(vacancy_amount)) 给出 2

关于python - 删除字符串的隐藏部分时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47686116/

相关文章:

python - 将字符串转换为日期时间对象

Python Pandas 计算每行的列中值的数量并将其放入列中

python - 如何将 BeautifulSoup.ResultSet 转换为字符串

Python/MySQL Select 返回 None with %s

python - 循环遍历 pandas 数据框行以应用条件的替代方案?

python - 如何在 Django Web 应用程序中生成可使用表单参数化的 Matplotlib 图

python - 如何用python在文件中写入列表

python - BeautifulSoup 不限制Python的结果

当我想要一个时,Python 到 CSV 将字符串分成两列

python - BeautifulSoup:根据前面标签的内容打印 div