python(递归实例)

摘要:在学习python递归知识点时,总是一知半解,似懂非懂的。。在反复看视频翻资料同时,也收集案例来分析求证。。通过分析下面几个案例希望能有所帮助!!!

1、用递归的方法实现阶乘。。。

1 def num(n):
2     if n == 1:
3         return 1
4     return n * num(n - 1)
5 
6 
7 m = num(8)
8 print(m)
View Code

2、递归做简单的判断。。。

 1 def salary(n):
 2     print(n)
 3     """递归终止条件.....当n除于2整数位等于0时结束"""
 4     if int(n / 2) == 0:
 5         return n
 6     res = salary(int(n / 2))
 7     return res
 8 
 9 
10 res = salary(10)
11 print(res)
View Code

3、下面(问路)的这个案例更加直观。。。。

 1 from time import sleep
 2 
 3 person_list = ['Tom', 'alex', 'lucy', 'jack', 'zsc']
 4 
 5 
 6 def ask_way(person_list):
 7     print('-' * 60)
 8     if len(person_list) == 0:
 9         return '根本没人知道'
10     person = person_list.pop(0)
11     if person == 'jack':
12         return '%s说:我知道,老男孩就在沙河汇德商厦,下地铁就是' % person
13 
14     print('hi 美男[%s],敢问路在何方' % person)
15     print('%s回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问%s...' % (person, person_list))
16     sleep(3)
17     res = ask_way(person_list)
18 
19     print('%s问的结果是: %res' % (person, res))
20     return res
21 
22 
23 res = ask_way(person_list)
24 print(res)
View Code

猜你喜欢

转载自www.cnblogs.com/97xiaolai/p/11253865.html
今日推荐