Python 从字符串中删除特殊字符无效
Python removing special character from string not working
昨天我写了一个脚本,从网页上抓取一个值,然后从抓取的字符串中删除两个特殊字符('.'和'€'),这样它就可以转换为整数格式。尽管如此,今天代码并没有取代“€”符号。
我从网页上得到的值是“5.000 €”,我使用代码替换这两个字符:
amt = driver.find_element_by_class_name('example-val').text
amt = int(amt.replace('.', '').replace('€', ''))
我已经尝试使用 re.sub,但没有结果:
amt = re.sub('.|€', '', amt)
我不知道这是否是将字符串转换为整数格式的最佳方法,但这是我想到的方法。
如有任何帮助,我们将不胜感激!
以更简单的方式试试这个:
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))
昨天我写了一个脚本,从网页上抓取一个值,然后从抓取的字符串中删除两个特殊字符('.'和'€'),这样它就可以转换为整数格式。尽管如此,今天代码并没有取代“€”符号。
我从网页上得到的值是“5.000 €”,我使用代码替换这两个字符:
amt = driver.find_element_by_class_name('example-val').text
amt = int(amt.replace('.', '').replace('€', ''))
我已经尝试使用 re.sub,但没有结果:
amt = re.sub('.|€', '', amt)
我不知道这是否是将字符串转换为整数格式的最佳方法,但这是我想到的方法。
如有任何帮助,我们将不胜感激!
以更简单的方式试试这个:
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))