有人可以向我解释计算python中的账单和硬币数量的方法吗?

时间:2015-01-17 04:26:42

标签: python module

所以我知道计算从更改中返回的账单和硬币的数量(例如:2 100美元的账单),您需要使用%模块。

但为什么你需要%模块,为什么人们不仅仅减去?

例如,我有100美元的更改

我知道我必须把它改成便士才能使它成为10000cents

cents = int(change*100) ---->10000cents

因此,当我计算多少100美元的账单,50美元的账单等等我必须回来时,为什么我需要达到%,为什么我需要分开?

例: cents = change*100

hundered_dollars = int(cents /10000)如果我在这里划分,10000/10000等于1,但是当我print(hundered_dollars)时,它会将其打印为0!

cents = cents %10000我怀疑是因为这个%

我是编程的新手,我不能只是把它包裹起来!

1 个答案:

答案 0 :(得分:2)

%不是模块;它被称为模数(或“余数”)运算符。

它是整数除法的对应物:

9 == 4 * 2 + 1

9 // 4 == 2    # integer divison
9 % 4 == 1     # remainder

所以,例如:

# paying $63.51
x = 6351 // 1000      # == 6    maximum number of $10.00 bills
y = 6351 % 1000       # == 351  $3.51 not payable in 10s.

# you could instead do
y = 6351 - (6351 // 1000) * 1000

# this would give the same result,
# but you've got to admit it's a lot
# less readable.