欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

Python基础day05 作业解析【10道 函数作业题】

发布时间:2024/9/30 python 45 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python基础day05 作业解析【10道 函数作业题】 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
  • 视频、源码、课件、软件、笔记:超全面Python基础入门教程【十天课程】博客笔记汇总表【黑马程序员】
  • Python基础day04【函数(定义与调用、文档说明、传参函数、全局变量、返回值、嵌套调用)】

  • Python基础day05【函数(函数传参的两种形式、函数形参)、拆包、引用、可变与不可变类型、引用做函数参数注意点】

  • Python基础day05【函数(局部变量、全局变量、多函数执行流程、函数返回值、函数参数)、拆包、引用、可变与不可变类型、函数注意事项】

  • Python基础day05【函数应用:学生管理系统、拆包、今日总结】

目录

函数

题目1 [加强训练]

题干

训练目标

训练提示

参考方案

题目2 [加强训练]

题干

训练目标

训练提示

参考方案

操作步骤

参考答案

题目3 [加强训练]

题干

训练目标

训练提示

参考方案

操作步骤

参考答案

题目4 [加强训练]

题干

训练目标

训练提示

参考方案

操作步骤

参考答案

题目5 [综合训练]

题干

训练目标

训练提示

参考方案

操作步骤

参考答案

题目6 [综合训练]

题干

训练目标

训练提示

参考方案

操作步骤

参考答案

题目7 [加强训练]

题干

训练目标

训练提示

参考方案

操作步骤

参考答案

函数[加强训练]

题目1 [加强训练]

题目2 [加强训练]

题目3 [加强训练]


函数

题目1 [加强训练]

题干

有如下代码:

 num = 10
 def anum():
     num = 20
 print(num)

请问这段代码最终输出的值是多少?10

训练目标

分清全局变量与局部变量

训练提示

全局变量与局部变量有什么区别?

参考方案

对于在函数内部的变量,如果改变没有global声明的变量,那么相当于是重新定义了一个与全局变量同名的局部变量。

题目2 [加强训练]

题干

有如下代码:

def abnum(big, small, middle):
    .....#此处省略一千行代码

现在要调用abnum函数,但是怕在调用的时候将参数的位置传错,如何避免这个情况?写一段代码示范下。

训练目标

关键字参数的使用

训练提示

题中已经给了现有的函数以及形参,但是要怎么才能保证实参能够一对一传入,不发生错误呢?

参考方案

明确要用关键字参数,来指定参数位置

操作步骤

在调用函数的时候,直接标明参数的值

参考答案

abnum(big=5, small=1, middle=1)

题目3 [加强训练]

题干

在填写个人资料时,如果选了女性,那么性别是女;如果不选性别,那就是默认是男,那么这个功能用函数怎么实现?

要求如下:定义一个函数gender,并在函数中将“所选性别为*”,并可以成功调用运行。

训练目标

练习缺省参数的使用,事实上缺省参数也是很常使用的。

训练提示

  • 在定义函数的时候,如何声明形参是缺省参数?

  • 缺省参数的意义是什么呢?

  • 参考方案

  • 在声明函数时直接声明缺省参数。

  • 缺省参数意味着,如果不传参数的话,那就按照默认的值来进行使用,并且程序不会报错。

  • 操作步骤

    参考答案

     def gender(g="男"):print("您的性别是:"+g)gender()# 经过上述例子以及代码,是不是说明我们的缺省参数是可以缺少可以省去的?是!

    题目4 [加强训练]

    题干

    要求实现一段代码:

    声明一个函数num,并且在调用函数的时候,不管输入多少个非关键字参数,函数都可以运行,且在函数内部还要把每个参数输出到屏幕上。

    训练目标

  • 不定长元组类型参数的使用

  • 元组的遍历

  • 训练提示

    不定长参数有什么作用?

    参考方案

    在不确定参数的个数的时候,用不定长参数做形参,可以接受多个可以接受的参数。

    操作步骤

    定义一个函数num,形参为*args,然后在函数内部进行对元组遍历输出即可

    参考答案

    def num(*args):for i in args:print(i)

    题目5 [综合训练]

    题干

    如下所示这是一个字典,{"name":"电脑","price":7000}

    请定义这样一个函数num,讲上述字典中的键值对传入到函数num中,要求用不定长参数来接收,并在函数中打印键值对输出

    输出格式为:

     key: name value: 电脑
     key: price value: 700

    训练目标

    不定长参数字典类型的使用 遍历字典

    训练提示

  • 字典类型的不定长参数的关键字什么?

  • 调用函数时应如何传参?

  • 如何对字典完成遍历并输出?

  • 参考方案

    1.不定长参数关键字没有固定的关键字,但是一般用 **kwargs多一些

    2.传入关键字参数

    3.可以对字典的键,值,以及键值对进行遍历

    操作步骤

  • 不定长参数关键字没有固定的关键字,但是一般用 **kwargs多一些

  • 遍历选择用dict.items()

  • 调用时传入关键字参数,将键值对传入即可

  • 参考答案

     def num(**kwargs):for key,value in kwargs.items():print("key:",key,"value:",value)num(name="电脑", price=700)

    题目6 [综合训练]

    题干

    对于一个函数num,当调用nun(1,2,a=3,b=4)和调用num(3,4,5,6,a=1)以及num(a=1,b=2)的时候都可以正常运行,并且可以对元组以及字典类型进行遍历输出,对字典类型进行输出字典的键值对(形式为:key:a,value:1),

    请写出这个函数并完成调用。

    训练目标

    元组类型不定长参数与字典类型不定长参数的混合使用

    训练提示

    当有元组以及字典两个不定长参数的时候,顺序要怎么放?如何传参?参数顺序有没有什么顺序?

    参考方案

  • 可以采用*args与**kwargs两个形参

  • 定义一个函数num,调用时将关键字参数放在最后面,其他参数放在前面。

  • 操作步骤

  • 定义函数num时,参数顺序应该是*args,**kwargs。

  • 在函数内部分别执行遍历操作即可。

  • 参考答案

     def num(*args, **kwargs):for i in args:print(i)for key,value in kwargs.items():print("key:",key,"value:",value)num(1,2,3,a=1, b=2)# num(a=1, b=2) 此种情况也可

    题目7 [加强训练]

    题干

    完成学生管理系统代码。

  • 添加学生功能

  • 删除学生功能

  • 修改学生功能

  • 查询学生功能

  • 查询所有学生功能

  • 训练目标

    知识的综合应用

    训练提示

    参考方案

    可参考课堂代码

    操作步骤

  • 搭建系统框架

  • 书写各个功能

  • 参考答案

    参考课件或者课堂代码

    函数[加强训练]

    题目1 [加强训练]

    题目2 [加强训练]

    题目3 [加强训练]

    总结

    以上是生活随笔为你收集整理的Python基础day05 作业解析【10道 函数作业题】的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。