python 递归+函数嵌套

def test(x,no):
    def digui(x=x,no=no):
        if x>0:
            if no > 20:          #防止程序无线循环假死,其实本程序中没有实际意义
                return "失败"
            print('no:'+str(no), end='\t')
            print('数值为:'+str(x))
            x -= 1
            no += 1
            digui(x=x, no=no)    #递归
        else:
            return x,no

    return digui(x, no)


if __name__ == '__main__':
    test(10,1)

例如:在本程序中main函数是没有办法直接调用test函数里面的digui函数的,
digui函数只能被test函数里面的参数调用

结果:

no:1    数值为:10
no:2    数值为:9
no:3    数值为:8
no:4    数值为:7
no:5    数值为:6
no:6    数值为:5
no:7    数值为:4
no:8    数值为:3
no:9    数值为:2
no:10   数值为:1

自学心得,如有错误,请批评指正

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容