python - 很难掌握 *= 功能
问题描述
因此,如果
balance = int(100)
balance *= 0.05
因为余额是可变的,所以不应该等于 105 吗?相反,我只得到 5 个。
如果我添加另一行代码,例如
balance = int(100)
balance *= 0.05
balance *= 0.05
输出将是 0.25,基本上我的变量没有结转,我只是将最终结果乘以 5%
如果我添加
balance= int(100)
balance *= 0.05 + balance
我得到 10005
我认为 += 或 *= 函数可以用于一个带变量的方程,做方程然后结转变量+结果作为新变量。
我如何为多步方程做到这一点。
解决方案
balance = int(100)
balance *= 0.05
是相同的
balance = int(100)
balance = balance * 0.05
你不会说那是 5,而不是 105?
A *= B 只是 A = A * B 的简写。
您的第三个示例与以下示例相同:
balance= int(100)
balance = balance * (0.05 + balance)
再一次,你得到了我认为你期望从这段代码中得到的东西。
顺便说一句,您不需要 int()。100 本身是“int”类型的文字值。因此,陈述您的第一个代码块的最简洁方式是:
balance = 100 * .05
推荐阅读
- swagger - Nestjs Swagger 4 的循环依赖
- realurl - TYPO3 9 中从 realurl 到 routeEnhancers 的转换...使用附加的 ValueMap 调整 LookUpTables 或如何定义“零值段”?
- matlab - 如何从像素数据网格化 ASCII 文本文件 - MATLAB
- slack - 如何在 Slack 中创建“子渠道”来跟踪从主渠道衍生出来的个人想法?
- r - 闪亮的应用程序:根据从 UI 发送到服务器的变量绘制数据,变量之一是日期
- excel - EXCEL: Chart not Updating when Value on Dropdown changes
- apache-spark-sql - 如何根据标识符将行值分组到列中?
- c# - C# 中的 Python 嵌入(cTrader/cAlgo bot PyTorch 调用错误)
- c++ - 窗口位置不会改变 sfml c++
- python - 如何创建一个将字符串中所有其他字母大写的函数?