递归简单的说就是函数自己不停的自己调用自己,直到满足某个条件退出。一个众所周知的例子就是从前有座山,山上有个庙,庙里有个和尚讲故事-从前有个山,山上有个庙,庙里有个和尚讲故事~~
递归的实现很简单,不过效率嘛会比较差一些。现在直接看简单例子吧
两个函数,第一个实现7的阶乘,第二个实现的是从1+2+..100>>> def func(num):
if num==1:
return 1
return num*func(num-1)
print(func(7))
#1+2+3+4+100
def func2(num):
if num==1:
return 1
return num+func2(num-1)
print(func2(100))
---------------
5040
5050
递归很简单,没什么太多可以说的,现在看看几个常见的默认变量
例子
__doc__ 文件注释
>>> """
我是注释
"""
#获取文件的注释
print(__doc__)
-------------
我是注释
__file__ 当前文件的路径print(__file__)
----------------
/Volumes/SEAGATE EXP/yli/pycharmprojects/Exercise/week6/module.py
__package__ 显示导入包的名字
from bin import admin
print(admin.__package__) #显示包
--------
bin
__name__
主要是用来搭配 __name__=__main__,确保只有执行才调用他下面的run函数,如果其他的文件导入他则不会调用run函数def run():
print('run')
#只有执行本文件,才执行;其他文件导入这个py文件不会执行run函数
if __name__=='__main__':
run()