萌新求解 Python 基础问题

2020-06-15 17:24:14 +08:00
 zaqwsx98

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 前面加一个+号才可以输出啊!! 求各位大哥大姐帮忙解释下

1879 次点击
所在节点    Python
9 条回复
zdnyp
2020-06-15 17:30:13 +08:00
能好好贴代码吗

转换是因为字符串和浮点型要相加,加个+号是因为要想加
UN2758
2020-06-15 17:35:30 +08:00
第一个问题和第二个问题是一个问题的两个方面
第三行你进行了 str 和 int 的拼接,这是不允许的,要直接显示 int 的话,改成

'print("商品的总金额为:{}".format(money_all)
'
问问题之前建议做好排版,建议看看 stackoverflow 的提问方法
UN2758
2020-06-15 17:36:57 +08:00
@UN2758 #2 V2EX 回复居然不支持 markdown?
UN2758
2020-06-15 17:38:02 +08:00
我记错了..
zaqwsx98
2020-06-15 20:12:25 +08:00
@zdnyp 抱歉,还不太会使用,谢谢你的回答
zaqwsx98
2020-06-15 20:12:39 +08:00
@UN2758 嗯嗯,谢谢啦
fansfans
2020-06-16 15:35:42 +08:00
这些基础问题再群里交流更加方便
imn1
2020-06-18 17:14:49 +08:00
1.不是因为 print 而转换,是因为后面要相加,同类型才能相加,所以转换
2.print 内不一定要相加,此例把+换成,逗号也能输出,区别是前者中间没有空格,后者有个空格

转换多数是为了向其他代码输出一个指定类型,或者 print 的时候实现某种格式,单纯显示出来没必要转换
customsshen
2020-06-19 09:58:19 +08:00
最新最好最方便的的字符串格式化方法是 f"实收金额为:{money_real_str}",花括号填写变量

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/681758

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX