python 如何将解析后的文本转换为整数或删除小数点?

e4eetjau  于 2023-02-02  发布在  Python
关注(0)|答案(1)|浏览(181)

如何将文本转换为整数?从网页解析出的“reference_price”是“123. 45”,其类型是文本。但是,我想将其更改为像“123”这样的整数。

###### Parsing   
tbody = table.tbody
    for i, tr in enumerate(tbody.find_all('tr')):      
        reference_price = tr.find('td').text
    
###### Convert to datafrme 
reference_price_list = reference_price_list.append(reference_price)
    df = pd.DataFrame(data=zip(reference_price_list), columns=['price'])

我尝试了int(“reference_price”)和reference_price.astype(int),但似乎没有解决问题。

bvuwiixz

bvuwiixz1#

IIUC,在将reference_price转换为(int)之前,需要确保只保留整数(* 类似小数的左边部分 *)。一种方法是将str.splitslicing一起使用:

reference_price_list = []

for tr in table.tbody.find_all("tr"):
    reference_price = (tr.find("td").text).split(".")[0]
    reference_prise = int(reference_prise.replace(",",""))
    reference_price_list.append(reference_price)

df = pd.DataFrame({"price": reference_price_list}) # <- df.dtypes|price:int64
  • 注意:您可能需要包含 * try..except * 语句以捕获最终的 * ValueError

相关问题