6.函数基础和函数参数

1.函数基础

    函数的定义

        def 函数名(参数):                    函数名命名规则:字母、数字和下划线组成

            pass                                   pass表示什么也没有,不执行操作(避免无函数体和返回值报错)

            函数体

            return 表达式                     可以返回任意表达式,但不能是赋值语句,无return,默认为None

       :return和print的区别,return是函数的返回值,可以赋值给变量,用变量接收,而print只能直接打印

   函数的调用

        函数名(参数)

2.函数参数

   

参数类型 定义 调用
必备参数

def fun(x):

   return x

fun(3)
默认参数

def fun(a,b=None):

   return a,b

fun(1) #输出(1,None)

fun(1,2) #输出(1,2)

不定长参数

def fun(a,*args): #args无长度限制

   return a,args

fun(1,2,3,4) #输出(1,(2,3,4)) 
不定长参数2

def fun(*args,**kwargs): #kwargs是字典

   return args,kwargs

fun(1,2,a=3,b=4) #输出((1,2),{'a':3,'b':4})

3.常见内置函

dir(object) 查看object类型的内置函数(list,tumple和str)

type(object) 查看object的类型

isinstance(name,object) 判断name是否为object类型,返回True或False

len(object) 返回object的长度

min 求最小值

max 求最大值

sorted() 升序排序

reversed() 反向

sum 求和

4.进制转换函数

bin 转换为二进制

oct 转换为八进制

hex 转换为十六进制

ord 转换为ASCII码

chr ASCII码转字符

5.高级内置函数

enumerate 枚举类型

定义:enumerate(obj, startindex) #将可遍历的数据对象(如列表、元组、字符串)组成一个索引序列

               startindex是开始下标      #一般转换为字典或者或者列表。(无startindex默认从0开始)

例:li=[1,2,3,4] 

       enum=dict(enumerate(li)) #{0:1, 1:2, 2:3, 3:4} 

eval 执行一个字符串表达式,并返回表达式的值

例:eval('1*2+3') #5

       eval('[1, 2, 3, 4]') #将字符串转化相应的list,tumple和dict

exec 执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码

例:eval('print('hello python')') #hello python

       eval('ans=1+2') 

       print('ans')  #3

filter 过滤器

定义:filter(function, ierater) function判断函数,iterator可迭代(循环)对象

例:def judge(x):

           return  True if x>3 else False

       li = [1, 2, 3, 4, 6]

       filter(judge, li) #[4, 6]

map 根据提供的函数对指定序列做映射

定义:map(function, iterator) function函数,iterator可迭代对象

例:def Max(x):
          return True if x>3 else False
       li=[1,2,3,5,6]

       list(map(Max,li)) #[False,False,False,True,True]

zip 将两个序列组合成一个字典

定义:zip(obj1, obj2) obj1作为key,obj2作为value(两序列长度不同截取最小值)

例:li=['name', 'age', 'sex']

       chara=['北秋', ‘18’, ‘boy’]

       dict(zip(li, chara)) #{'age': '18’, ‘boy', 'name': '北秋'}

猜你喜欢

转载自blog.csdn.net/weixin_42089175/article/details/80473806