我正在嘗試將字串轉換為整數,如下所示:
money = "$163,852.06"
original_amount = money[1:]
print(int(original_amount))
在這里,我必須對“金錢”變數進行切片,這樣我才能得到準確的數字。
我收到此錯誤:
Traceback (most recent call last):
File "<string>", line 3, in <module>
ValueError: invalid literal for int() with base 10: '163,852.06'
有人可以幫我嗎?
uj5u.com熱心網友回復:
您的代碼有兩個問題:
您的號碼中有一個逗號 - Python 不會將其解釋為數字的有效部分。
int()您正在對表示浮點數的字串應用轉換 - 它有一個小數部分。
這解決了兩個問題,
money = "$163,852.06"
original_amount = ('').join(money[1:].split(','))
print(int(float(original_amount)))
代碼用逗號分割數字,然后立即將其加入一個新的整體 - 這也適用于多個逗號。
然后它首先將字串轉換為浮點數,并使用該浮點數來獲得最終的整數。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/442828.html
標籤:python-3.x 类型 整数
上一篇:閉包沒有正確參考正確的變數
