Python 学习第五天

Python 学习

第五天

1》函数了解
(1)函数的出现解决了多次重复书写某一部分代码的问题
(2)函数往往是莫格功能的集合
(3)函数不要和我们数学中的函数联系起来
(4)函数就是个代码块,具有对立的功能,也可以理解为一个对象
2》函数定义与调用
函数的定义:
	函数代码块以def关键字开头,后接函数标识符名称和小括号()
	函数内容以冒号开始,并且必须要缩进
def 函数名():
	函数体

函数的调用:
执行执行函数名就调用了

每次调用某个函数时,该函数体都会从头开始
当函数中代码块执行完毕时,意外着调用结束
函数的定义一定要在函数调用之前,否则找不到函数
3》函数文档说明
def 函数名(a,b):
	'''
	注释
	'''

查看函数的文档信息
help(函数名)
4》函数参数
(1)定义
def 函数名(parim1,parim2):
	函数体

parim1,parim2 是形参

调用的时候,传的参数就实参
def add(num1,num2):
    '''
    :param num1:
    :param num2:
    :return:
    '''
    return num1+num2


print(add(10, 20))

help(add)
'''
函数参数类型
   位置参数
        1.必须与声明中的参数个数保持一致
        2.参数顺序可以不一样,当不保证结果不正确,可以通过判断,确定数据合理性
   关键字参数
   默认值参数
   不定长参数
'''

#   位置参数
#   通过代码看出:name 是字符串,sex是整型
# def pa_hell(name,sex):
#     # 这个方法去判断是否是摸一个类
#     if isinstance(sex,int):
#         sex_dict = {1: u'先生', 2: u'女士'}
#         print('%s %s' %(name,sex_dict.get(sex)))
#     else:
#         print('参数错误')
#
# pa_hell('dd','2')


# 关键字参数(一个参数用关键字参数,其他参数也必须用关键字参数)
# def pa_hell1(name,sex):
#     sex_dict = {1: u'先生', 2: u'女士'}
#     print('%s %s' %(name,sex_dict.get(sex)))
#
#
# pa_hell1(sex= 2, name= 'dd')

# 默认值参数
# 1.使用场景,参数比较多,某个参数,一般不会变化,每次调用方法的时候没有必要必填
# 2.对于默认值参数来说,调用的时候,你写与不写,他都在哪里,不写则是默认值

# print就是一个默认参数
#print('123', end='/t')
# 定义一个默认值参数
# def getUserInfo(name,age,sex='man'):
#     print("%s %s %s" %(name,age,sex))
# getUserInfo("dd",12)


# 不定长参数
# 1.场景定义的方法的参数是不确定的
# 2.使用不定长的参数(可以是1个,2个,n个)
# 3.使用*ages做为变量名,args是特定的数据类型,可以放入多个数据
# 4.ages类型是一个元组,调用方法参数的形式把元素放入元组args,通过for进行取值
# 5.如果声明为,第一个参数是位置参数,第二个是不定长参数,再调用的时候,我们传递的实际数据,第一个是位置参数,第二个是不定长参数

# 6.如果声明为,第一个参数是不定长参数,第二个是位置参数,再调用的时候,我们传递的实际数据时没第二个变量获取不到值,这只能通过第二个参数后边的用关键字参数传参

# def sum(*args):
#     for i in args:
#         print(i)
#
# sum(1,2,3,4)

# def sum1(a,*args):
#     for i in args:
#         print(i)
#
# sum1(1,2,3,4)

def sum2(*args,a):
    for i in args:
        print(i)

sum2(1,2,3,4,a=12)
5》函数返回值
函数执行完成后,返回回来的数据

一个函数可以有返回值,也可以没有返回值
函数返回数据的时候用关键字return
一旦执行了return,后面的代码不会执行了
如果要返回多个值,就返回一个容器(元组,字典等)
6》四种函数类型

(1)无参数,无返回值的函数

(2)无参数,有返回值的函数

(3)有参数,无返回值的函数

(4)有参数,有返回值的函数

7》函数的嵌套调用
一个函数里面有调用了另一个函数,就是所谓的函数调用
8》细节
(1)python中一切都是对象,严格意义我们不能说值传递还是引用传递,我们说传不可变对象和传可变对象
(2)可变对象和不可变对象
	string,tuples和number是不可变对象,而list,dict是可变对象
	不可变类型:变量a = 5然后再赋值a=10,这里实际是生成一个int对象10,让a再指向它。
	可变类型:变量赋值la = [1,2,3,4]后,赋值a[2]=5,则是la的第三个元素改变,而la不变。
	

在这里插入图片描述

9》lambda方法
'''
lambda方法:匿名方法,没有方法名
这种方法只使用一次,用完就不用了,省内存
lambda是一个表达式,不需要def定义,只能写简单的逻辑
'''
sun = lambda a,b: a + b
print(sun(1, 2))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值