gpt4 book ai didi

python - 如何在 Python 中乘以小数

转载 作者:行者123 更新时间:2023-12-04 13:26:55 27 4
gpt4 key购买 nike

我正在写一个英镑到美元的转换器程序。我在将两个数字相乘时遇到了一些问题。

pounds = input('Number of Pounds: ')
convert = pounds * .56
print('Your amount of British pounds in US dollars is: $', convert)

谁能告诉我纠正这个程序的代码?

最佳答案

在 Python 3 中 input 将返回一个字符串。这基本上相当于 raw_input在 Python 2 中。因此,您需要在执行任何计算之前将该字符串转换为数字。并为“错误输入”做好准备(即:非数字值)。

此外,对于货币值(value),使用浮点数通常不是一个好主意。您应该使用 decimal 避免舍入错误:

>>> 100*.56
56.00000000000001
>>> Decimal('100')*Decimal('.56')
Decimal('56.00')

所有这些都会导致类似的事情:
import decimal

try:
pounds = decimal.Decimal(input('Number of Pounds: '))
convert = pounds * decimal.Decimal('.56')
print('Your amount of British pounds in US dollars is: $', convert)
except decimal.InvalidOperation:
print("Invalid input")

生产:
sh$ python3 m.py
Number of Pounds: 100
Your amount of British pounds in US dollars is: $ 56.00

sh$ python3 m.py
Number of Pounds: douze
Invalid input

关于python - 如何在 Python 中乘以小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28522152/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com