python 实现递归

def calc(n):
    print(n)
    if int (n/2)==0:
        return n
    return calc(int(n/2))
calc(10)

import time
person_list=['alex','wupengqi','yuanhao','linhaifeng']
def ask_way(person_list):
    print('-'*60)
    if len(person_list)==0:
        return "没人知道"
    person=person_list.pop(0)
    if person =='linhaifeng':
        return '%s说:我知道'%person
    print("hi[%s],敢问路在何方"%person)
    print("%s回答道:我不知道,但是念与你有缘我帮你问问%s"%(person,person_list))
    time.sleep(1)
    res=ask_way(person_list)
    print('--')
    return res
res=ask_way(person_list)
print(">>>>>"*20)
print(res)

name='hlf'
def mo():
    global name
    name='bbb'
    print(name)
print(name)
mo()
print(name)
#函数作用区域
#函数中没有return 默认为none#
def test1():
    print("in the test")#函数中没有return默认为none
def test():
    print("int the test2")
    return test1
res=test()
print(res())
print('____'*60)
#运行test1#不加括号是内存地址
#在函数中主要看函数的先定义后使用 找他的作用域 来判定,return 是返回
# 若果没有函数 或者函数没加括号调用的是地址, 主要看函数怎么调用
print('_'*60)
def foo():
    name='alex'
    def bar():
        name='pl'
        def sb():
            name='wo'
            print(name)
        sb()
        print(name)
    bar()
    print(name)
print(name)
foo()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值