Python浮动vs字符串

时间:2018-09-21 23:08:17

标签: python string

我正在尝试编写一个加密货币交易利润计算器,要求用户输入有关他们购买的加密货币名称,购买价格以及购买的加密货币数量的信息。然后,程序将计算出他们需要以不同的百分比获利的价格。当我运行此代码时,收到以下错误消息:

line 16, in <module>
    print("sale Price: " + salePrice)
TypeError: must be str, not float

这是我的代码:

fee = 1.002

cryptoName = input("Crypto Name: ")
boughtPrice = float(input("Price When Bought: "))
numBought = float(input("Number bought: "))

feePrice = boughtPrice * fee

print(" ")
print(" ")

print("**********************")
print(".3% Profit: ")
salePrice = feePrice *1.003
print("**********************")
print("sale Price: " + salePrice)
print("----------------------")
newBalance = salePrice * numBought
invested = numBought * feePrice
totalProfit = newBalance - invested
print("Total Profit: " + totalProfit)

我更习惯Java,我最初是用Java编写此程序的,我知道在Java中您可以对字符串执行数学运算,只要将某些数值与之关联即可,但正如我所发现的,Python是不同的。我应该如何对此编码不同?

1 个答案:

答案 0 :(得分:2)

您有一些选择。第一种只是转换为字符串并进行连接:

print("sale Price: " + str(salePrice))

但可以说最好使用.format()

print("sale Price: {}".format(salePrice))

或者,如果使用python 3.6或更高版本,请使用f-string

print(f"sale Price: {salePrice}")