09 函数二

2020-09-09  本文已影响0人  Chloris_0320

函数二

1. 函数的返回值


2. ⽂档字符串

'''
help()
通过help()函数可以查询其他函数的用法
语法: help(函数对象)
'''
help(print)

def fn(a:int,b:str,c:bool)->int: # 或者简略写也可以def fn(a,b,c):
.... '''
....这个函数的功能就是一个文档字符串在函数中的使用说明
....参数
....a,作用,类型,默认值...
....b,作用,类型,默认值...
....c,作用,类型,默认值...
....返回值
....'''
....return 1
help(fn)

3. 函数的作⽤域

4. 命名空间

全局
函数

5. 递归函数

例:尝试求10的阶乘(10!)
1! = 1
2! = 1 * 2 = 2
3! = 1 * 2 * 3 = 6

n = 10
for i in range(1,10):
....n *= i
print(n)
结果:3628800

例:定义一个函数 求任意数的阶乘

  1. 基线条件 问题可以被分解为最⼩问题,当满⾜基线条件时,递归就不执⾏了
  2. 递归条件 可以将问题继续分解的条件

例:用递归的方式来解决 任意数的阶乘
10! = 10 * 9!
9! = 9 * 8!
...
1! = 1

练习:定义一个函数 来为任意数字做任意幂运算 n ** i
10 ** 5 = 10 * 10 ** 4
10 ** 4 = 10 * 10 ** 3
...
10 ** 1 = 10

作业:定义一个函数,用来检查一个任意的字符串是否是回文字符串,如果是返回True,不是返回False。回文字符串从前往后念和从后往前念是一样的。例如 TNT
print(fn('aba'))

用递归的思想来解决
'''
abcdefgfedcba
如果是一个字符肯定是回文
先检查第一个字符和最后一个字符是否一致,如果不一致则不是回文
bcdefgfedcb 是不是回文
cdefgfedc 是不是回文
defgfed 是不是回文
....
g 是不是回文
'''

上一篇下一篇

猜你喜欢

热点阅读