money_all = 56.75 + 72.91 + 88.50 + 26.37 + 68.51 money_all_str = str(money_all) print("商品的总金额为:" + money_all_str) money_real = int (money_all) money_real_str = str(money_real) print("实收金额为:", money_real_str)
这段代码,为什么要将 money_al 转换为字符串才可以输出,没转换就是运行不了? 还有就是第三行为啥要在输出值 money_all_str 前面加一个+号才可以输出啊!! 求各位大哥大姐帮忙解释下
|  |      1zdnyp      2020-06-15 17:30:13 +08:00 能好好贴代码吗 转换是因为字符串和浮点型要相加,加个+号是因为要想加 | 
|  |      2UN2758      2020-06-15 17:35:30 +08:00 第一个问题和第二个问题是一个问题的两个方面 第三行你进行了 str 和 int 的拼接,这是不允许的,要直接显示 int 的话,改成 'print("商品的总金额为:{}".format(money_all) ' 问问题之前建议做好排版,建议看看 stackoverflow 的提问方法 | 
|  |      4UN2758      2020-06-15 17:38:02 +08:00 我记错了.. | 
|      7fansfans      2020-06-16 15:35:42 +08:00 这些基础问题再群里交流更加方便 | 
|  |      8imn1      2020-06-18 17:14:49 +08:00 1.不是因为 print 而转换,是因为后面要相加,同类型才能相加,所以转换 2.print 内不一定要相加,此例把+换成,逗号也能输出,区别是前者中间没有空格,后者有个空格 转换多数是为了向其他代码输出一个指定类型,或者 print 的时候实现某种格式,单纯显示出来没必要转换 | 
|      9customsshen      2020-06-19 09:58:19 +08:00 最新最好最方便的的字符串格式化方法是  f"实收金额为:{money_real_str}",花括号填写变量 |