Python从字符串中删除特殊字符不起作用

问题描述 投票:0回答:1

昨天我写了一个脚本,该脚本从网页上抓取了一个值,然后从抓取的字符串中删除了两个特殊字符('。'和'€'),因此可以将其转换为整数格式。尽管如此,今天的代码仍未取代“€”符号。

我从网页上获得的值是'5.000€',要替换两个字符,请使用代码:

amt = driver.find_element_by_class_name('example-val').text
amt = int(amt.replace('.', '').replace('€', ''))

我已经尝试使用re.sub,但没有结果:

amt = re.sub('.|€', '', amt)

我不知道这是否是将字符串转换为整数格式的最佳方法,但这是我想到的。

任何帮助将不胜感激!

python int euro
1个回答
0
投票

以更简单的方式尝试:

amt = driver.find_element_by_class_name('example-val').text
amount=''
for i in amt:
    if i in '0123456789':
        amount+=i
amount=int(amount)

作为单行:

amt = driver.find_element_by_class_name('example-val').text
#Either:
amt = int( ''.join(filter(lambda i: i.isdigit(), amt)))
#or:
amt = int(re.sub("\D", "", amt))
© www.soinside.com 2019 - 2024. All rights reserved.