不醉 发表于 2020-10-28 19:09:30

运算问题,求解

# 水果单价
apple_price = 6.6
orange_price = 5

# 水果重量
apple_weight = input("请输入苹果的重量:")
orange_weight = input("请输入橙子的重量:")

# 再计算总价
price = apple_price * apple_weight + orange_price * orange_weight
print("您消费的金额是%.2f元" % price)


没有报错,但是运行起来输入完数量,后面就报错了,是哪里的问题?大神帮帮我

小甲鱼的铁粉 发表于 2020-10-28 19:13:28

apple_weight = int(input("请输入苹果的重量:"))
orange_weight = int(input("请输入橙子的重量:"))

小甲鱼的铁粉 发表于 2020-10-28 19:14:12

python3的默认的输入的东西全部都是字符串,想要输入数字的话需要加int进行类型转换

hrp 发表于 2020-10-28 19:59:10

小甲鱼的铁粉 发表于 2020-10-28 19:13


应该把int改为float,毕竟重量价格不可能总是整数

小甲鱼的铁粉 发表于 2020-10-28 20:00:21

hrp 发表于 2020-10-28 19:59
应该把int改为float,毕竟重量价格不可能总是整数

对,你说得对,不好意思,弄错了

linke.zhanghu 发表于 2020-10-28 22:33:43

input接收到的数据都是字符串,字符串是不可能进行数学运算的.只能将他们转换成数字才可以进行运算.
apple_weight = int(input("请输入苹果的重量:"))
orange_weight = int(input("请输入橙子的重量:"))
这样就行了.把重量转换成整数即可.当然如果你有需求也可以转成小数.随便啦........

dw_0123 发表于 2020-10-29 07:07:02

input来的东西都默认为字符串,
所以python会报错说:臣妾做不到啊,字符串不能乘以浮点数啊皇上!

题目里input来的东西是水果的重量,这应该是有小数点的数字,
所以我们要把input来的东西,转换为 "可以装小数点的浮点数" float 。
apple_weight = float(input("请输入苹果的重量:"))
orange_weight = float(input("请输入橙子的重量:"))


# 水果单价
apple_price = 6.6
orange_price = 5

# 水果重量
apple_weight = float(input("请输入苹果的重量:"))
orange_weight = float(input("请输入橙子的重量:"))

# 再计算总价
price = apple_price * apple_weight + orange_price * orange_weight
print("您消费的金额是%.2f元" % price)

不醉 发表于 2020-10-29 09:59:27

多谢各位,用 float 就行了,
页: [1]
查看完整版本: 运算问题,求解