python基础学习2020.6.24-抽象

1.定义函数   def

def hello(name):
    return 'Hello,'+name+'!'
print(hello('World'))#Hello,World!
print(hello('Gumby'))#Hello,Gumby!

 

2.函数参数  

2.1无参数

def func1():
    print("没有参数")

2.2一个参数

def func1(a):
   return a

2.3多个参数

def func1(a,b,c):
   return a+b+c

2.4必须参数,必须按照正确顺序和数量传入参数

def func1(name,age,job):
   print("name:%s age:%d job:%s"%(name,age,job))
func1("Gumvy",20,"IT")

2.5关键字参数

def func1(name,age,job):
   print("name:%s age:%d job:%s"%(name,age,job))
func1(age=20,name="Gumby",job="IT")

2.6默认参数,默认参数必须放在必须参数的后面

def func1(name,age,job="IT"):
   print("name:%s age:%d job:%s"%(name,age,job))
func1("Gumby",20)
func1("Alan",25,"teacher")

2.7不定长参数

参数带一个星号*

def func1(*args):
    print(args)
func1(1,2,3,"Gumby")#(1, 2, 3, 'Gumby')以元组形式保存

参数带两个星号**

def func1(**kwargs):
    print(args)
func1(age=20,name="sfencs",job="IT")#{'age': 20, 'name': 'sfencs', 'job': 'IT'}以字典形式保存

定义函数的参数时请以必须参数、默认参数、带一个星号的不定长参数、带两个星号的不定长参数的顺序定义形参

3.参数传递

3.1可变类型

def func1(list1):
    list1.append("Gumby")
list2=[1,2,3]
func1(list2)
print(list2)#[1, 2, 3, 'Gumby']list2会改变

3.2不可变类型

def func1(a):
    a=5
b=10
func1(b)
print(b)#输出为10

4.变量作用域

L (Local) 局部作用域
E (Enclosing) 闭包函数外的函数中
G (Global) 全局作用域
B (Built-in) 内建作用域

按照L-->E-->G-->B的顺序查找

内部作用域修改外部作用域变量

5.递归函数

#斐波那契数列为0,1,1,2,3,5,8,13,21,34.......
def fibon(n):
    if n<=2 :
        return n-1
    return fibon(n-1)+fibon(n-2)
print(fibon(7))#输出数列中第七个数,为8

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值