Python基础——函数基础和函数参数 : GezCode源码站-专业源码源代码,抓包资源整站,互站源码,php源码,java源码,vue源码,游戏源码,直播源码,直播带货,合约源码,合约源码下载,娱乐彩,求购需求,源码出售,源码买卖,源码平台,整站源码下载!GezCode Source Station-Professional source code, package grabbing resources for the entire site, mutual source code, PHP source code, Java source code, Vue source code, game source code, live source code, live streaming with goods, contract source code, contract source code download, entertainment lottery, purchase demand, source code sales, source code trading, source code platform, whole site source code download! - GezCode源码站-专业源码源代码,抓包资源整站,互站源码,php源码,java源码,vue源码,游戏源码,直播源码,直播带货,合约源码,合约源码下载,娱乐彩,求购需求,源码出售,源码买卖,源码平台,整站源码下载!GezCode Source Station-Professional source code, package grabbing resources for the entire site, mutual source code, PHP source code, Java source code, Vue source code, game source code, live source code, live streaming with goods, contract source code, contract source code download, entertainment lottery, purchase demand, source code sales, source code trading, source code platform, whole site source code download!

Python基础——函数基础和函数参数

本章节讲述函数的基本用法 ;请您准备好pycharm(电脑)运行工具进行操作

一、函数的基本内容

1、函数标准格式

def 函数名(参数):
    函数接口
    函数体
    return 返回值

函数名命名规则: 字母、数字和下划线组成,和变量命名规则一致

return 后面可以返回任意表达式,但不能是赋值语句

2、函数调用

函数名(参数)

def xiaoyan(s):                   
   
    print("我是{}".format(s))     
xiaoyan('小闫同学')

注:必须先调用哦

3.参数

  • 形参:函数没有调用的时候,它没有任何意义;在调用时,必须传入参数,所以也叫必须参数
  • 实参:与形参位置是一一对应的,所以也叫位置参数;缺一不可,缺了或多了都会报错
def xiaoyan(a, b):                  
    
    print(a, b)                     

xiaoyan("小闫同学",'Welcome to Xiaoyan class')

输出结果 如图:

 

 如果您没看懂 我们换个简单的例子

代码:

def f(x, y):

    print("我是{}{}".format(x, y))      #format 类型

f(1, 2)

输出结果如下图:

缺少参数时

此时,他就会报错

 

多参数时Python基础——函数基础和函数参数

他也会报错

 

重点:

  • 默认参数:不传参,用默认值,传参它也能接收;一定要放在必须参数后面,否则会报错

 

  • 关键字参数

f(x=1, y=2)

通过关键字去找对应的必须参数,这样就不需要一一对应了。

  • 动态参数

一般写法:def f(*args, **kwargs) ;

*args:调用参数时,所有传入的多余的位置参数都会被args接收生成一个元组;
**kwargs:函数调用时,多余的关键字参数,都会被kwargs接收,生成一个字典

Python基础——函数基础和函数参数

  1. 扩展:为动态参数传入列表、字典、元组

Python基础——函数基础和函数参数

return
注意 return 和 print 的区别,return是函数的返回值,返回值可以赋值给变量,而print只是打印出来
二、常用内置函数
函数名 作用
len 求长度
min 求最小值
max 求最大值
sorted 排序
reversed 反向
enumerate 返回一个可以遍历的对象
eval 取出字符串的内容,当做表达式进行运算并有返回值
exec 执行字符串,没有返回值
filter 过滤器,每个可迭代对象去执行函数,获取满足条件的,不满足的删去
map 对于可迭代参数,应用函数,结果返回
zip 配对

enumerate:

li = ['a', 'b', 'c']

for i in enumerate(li):
    
    print(i)

print(list(enumerate(li)))

输出结果:

Python基础——函数基础和函数参数

eval:

a = "1 + 2 + 3"
print(eval(a))

filter:

def f1(i):
    return i > 10

li = [1, 90, 23, 49, 5]
print(list(filter(f1, li)))

输出结果:

Python基础——函数基础和函数参数

map:

def f1(i):
    
    return i > 10

li = [1, 90, 23, 49, 5]

s = [11, 34, 57]

print(list(map(f1, li)))

输出结果:

Python基础——函数基础和函数参数

注:filter和map的区别是: filter是对对象的筛选,获取的是对象元素,map获取的是表达式的值(True或False)

zip:

s1 = [1, 2, 3]

s2 = ['a', 'b', 'c']

a = zip(s1, s2)

print(dict(a))

输出结果:Python基础——函数基础和函数参数

三、作业:    (4套干货哦)

题目:定义一个函数,对指定数据进行排序,通过参数来决定是正向排序还是反向排序。

[rihide]

比较简单易懂

def f(*args, s=1):
    if s == 0:
        print(sorted(args)
)
    elif s == 1:
        print(sorted(args, reverse=True))
    else:
        print("小可爱!")
li = [4,2,8,5,10]
f(*li)            #[10, 8, 5, 4, 2]
# f(*li, s=0)      #[2, 4, 5, 8, 10]
# f(*li, s=1)      #[10, 8, 5, 4, 2]
# f(*li, s=2)      #小可爱!

 

复杂一些

#定义个函数,可以对输入的数据进行排序, 通过参数来决定是正向排序还是反向排序。
y=input('输入数字(数字之间用空格隔开):')
z=int(input('输入一个整数(偶数为正向排序,奇数为反向排序):'))
x=y.split(' ')                #对接收的字符串进行切片,得到列表
x=list(map(eval,x))           #将列表的元素由字符串变成数字

def sort(a,b):
        c=sorted(b)           #正向排序
        if a%2==0:
            print(c)
        else:
            c.reverse()       #逆向排序
            print(c)
k=sort(z,x)
y=input('输入数字(数字之间用空格隔开):')
z=int(input('输入一个整数(偶数为正向排序,奇数为反向排序):'))
x=y.strip().split(' ')                #对接收的字符串进行切片,得到列表
x = filter(lambda x:x!='',x)
try:
    x=list(map(eval,x))   #将列表的元素由字符串变成数字
except:
    print('输入存在非数字字符')
def sort(a,b):
        c=sorted(b)           #正向排序
        if a%2==0:
            print(c)
        else:
            c.reverse()       #逆向排序
            print(c)
k=sort(z,x)
y=input('输入数字(数字之间用空格隔开):')
z=int(input('输入一个整数(偶数为正向排序,奇数为反向排序):'))
x=y.strip().split(' ')                #对接收的字符串进行切片,得到列表
x = filter(lambda x:x!='',x)
try:
    x=list(map(eval,x))   #将列表的元素由字符串变成数字
except:
    raise Exception('输入存在非数字字符')
def sort(a,b):
        c=sorted(b)           #正向排序
        if a%2==0:
            print(c)
        else:
            c.reverse()       #逆向排序
            print(c)
k=sort(z,x)

 

[/rihide]

 

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开/商品支付,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

可以

常见问题

相关文章

评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

我们将24小时内回复。
取消
Python基础——函数基础和函数参数-海报

分享本文封面