函数

1.函数的定义
开发程序时,需要多次调用某一部分代码,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码组织为一个小模块,这就是函数。
2.函数的格式
def 函数名称()
。。。函数体。。。
注意要求:
1.函数名称遵循标识符命名规范,使用下滑线连接多个标识符
2.函数依靠强制缩进来表示的。
3 : () 都是英文表示
4. 函数只有在调用的时候才创建,不调用不执行。
3.调用函数格式:
函数名():
注意:
必须定义函数在调用函数,函数可以调用多次。
一般情况下##

4.函数的参数:
格式:
函数名称(参数1,参数2。。。)
函数定义几个参数,调用就必须调用几个参数
定义的函数叫形参,调用函数的时候叫实参
5.return的运用
函数体最后使用一个关键字return作为要返回值。
若不反回,就默认none 后面不会写其它代码
可以返回值
6.传参
位置传参
位置一一对应

关键字传参

默认参数

# 默认参数:
def save_user_info(username,age,gender='男'):         #gender='男'  默认必须放到后面
    print('姓名{},年龄{},性别{}'.format(username,age,gender))

save_user_info('张三',10)          #默认性别为男
save_user_info('李四',20,'女')     #更改性别为女

可变参数 :元组参数(*args) 字典参数(**kwargs)
*的用法 (具有打散功能) 打散元组列表字符串

def func(a,s,d,f):     #定义函数内是可变数据类型
    print(a,s,d,f)

tup=(1,2,3,4)
func(*tup)      #1 2 3 4

tup=(1,23,4,5,6)
print(*tup)       #1 23 4 5 6
lst=['a','s','d','f']
print(*lst)           #a s d f
s='hello'
print(*s)            #h e l l o

   元组参数
def func(*args):
    print(args)
    print(args[0],args[2])      #获得元组中的元素

func(1,2,3,4,5,6)

字典参数(**kwargs) **的功能-


def func(**kwargs):
    print(kwargs)    #{'age': 18, 'name': '张三', 'gender': '男'}
    print(kwargs['name'],kwargs['age'],kwargs['gender'])    # 张三 18 男

func(name='张三',age=18,gender='男')

**的功能---具有打散的功能。
def func(name = '张三',age=10):
    print(name,age)             #赵四 10

dic={'name':'赵四','age':10}      #打散字典
func(**dic)

*args 必须放在**kwargs 后
def func(**kwargs,args)   #报错
    pass

def func(*args,**kwargs):
    print(args[0],kwargs['name'])
func(10,name='李白')

顺序:
位置参数—>*args—>默认参数---->**kwargs
7.函数里面的嵌套

题型:

#一创建一个say_helle函数:
def say_hello():
    print('hello,world')
    print('hello!')
    print('hello,python')

#调用函数
say_hello()
print('程序结束')

在这里插入图片描述
函数

def sum_num(aa,bb):
    print(aa,'--->',bb)
    num1=aa
    num2=bb
    num3 = num1 + num2
    print(num3)
sum_num(1,2)

在这里插入图片描述

a=10000
print('a变量的id值--->',id(a))

def fun(b):
    print('b变量的id值--->',id(b))
    print(b)
    b = 200
    print(b)
    print('b变量的id值--->', id(b))
fun(a)
print(a)

运行流程:
在这里插入图片描述
在这里插入图片描述

def func():
    a=10
    b=20
    return a,b
ret= func()
print(ret)#(10,20)
#因此可以用多个变量来接受元组中的内容
num1,num2=func()
print(num1,num2)

在这里插入图片描述

def func(a,*args,b=10,**kwargs):
    print(a)
    print(args)
    print(b)
    print(kwargs)
func('zs','as',b = 23,c=20,d=49)

在这里插入图片描述

def outter():
    print('aaa')
    def inner():
        print('bbb')
    inner()
outter()

在这里插入图片描述
在这里插入图片描述

def func1():
    print('func1...')
def func2():
    func1()
    print('func...2')
def func3():
    func2()
    print('func3...')
func3()

在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190103164655414.png

     打印重复语句:
def print_lines(row,char,num):
    temp =1

    while temp<=row:
        print(char,num)
        temp+=1

print_lines(5,'~',10)     # 5   10 可以更改

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值