Python,-1返回值

时间:2015-03-20 04:27:39

标签: python

所以伙计们,我有一个时髦的错误,我想知道你是否可以帮助我。 我有一个功能,应该找到使用最少硬币进行更改的方法。

def change_counter(cost, paid):
    changefor = paid - cost

我有一个变量,变量基本上是你需要多少钱才能做出改变。 然后我宣布了一些变量,penny = 0,并跟踪每个硬币的数量。 然后我做了一个while循环,循环直到changefor命中为零。

while(changefor > 0):
    if changefor >= 100:
        changefor - 100
        ++hundreddollar
    elif,etc

剩下的就是自我解释,只打印每枚硬币的使用量等等。有谁看到可能导致问题的原因?我得到的返回值为-1,而while循环中没有任何东西似乎正在做任何事情。

1 个答案:

答案 0 :(得分:2)

因为您正在计算事物而不是将它们存储在任何地方

首先,谢谢你教给我一些新东西。

++x

编译, 也没有。看这里,Why are there no ++ and --​ operators in Python?,但python中没有增量/减量运算符。同样,

changefor - 100

没有做任何事情。当然,它会评估changefor并减去100,但它不会将该值存储在任何地方。动态语言的陷阱。

changefor = changefor - 100

changefor -= 100 

会帮你做得更好

编辑:我正要问为什么接受减量语法并发现这个人Behaviour of increment and decrement operators in Python已经遇到了这种奇怪的现象。