无法理解python代码的功能。

问题描述 投票:-2回答:1
def dtb(num):
    if num > 1:
        dtb(num//2)
    print(num%2,end='')

dtb(10)

我理解递归部分,但不能够理解其余的代码.谁能提供一步一步的解释.先谢谢你。

python loops indentation
1个回答
1
投票

本函数将一个整数十进制数转换为二进制数。

/ 本函数将一个整数小数转换为二进制数。例如(13/5)将返回2

PS.你需要写dtb(10)而不是def(10)来调用旅游方法。你需要写dtb(10)而不是def(10)来调用旅游方法。


0
投票

如果是打印部分让你感到困惑,它将打印num mod 2 (除以2后的余数)。end=''是为了让python不会在后面打印新的一行,默认情况下是这样的。

至于 def(10),我想这是一个错别字。应该是dtb(10),它将调用整数10的递归函数。

© www.soinside.com 2019 - 2024. All rights reserved.