Python学习笔记--参数

目录

实参与形参

不定长参数

拆分参数列表

返回值


实参与形参

  1. 定义函数时,带默认值的形参必须放在不带默认值的形参后面

下面程序的输出结果是( )。

def StudentInfo(country='中国',name):

print('%s,%s'%(name,country))

StudentInfo('美国','大卫')

A.大卫,美国

B.美国,大卫

C.大卫,中国

D.报错

正确答案:D

解析:定义函数时,带默认值的形参必须放在不带默认值的形参后面。StudentInfo函数的两个形参不符合该规则,因此会报错。

不定长参数

2、不定长的位置参数在传递给函数时会被封装成( )。

A.元组

B.列表

C.集合

D.字典

正确答案:A

解析:不定长的位置参数在传递给函数时会被封装成元组;而不定长的关键字参数在传递给函数时会被封装成字典。

3、对于一个带不定长参数的函数,其普通形参可以有默认参数值。

A.正确

B.错误

正确答案:A

解析:在不定长的位置参数后面可以有普通形参,对于该形参可以指定默认参数值并在函数调用时使用该默认参数值。对于不定长的关键字参数前面的普通形参,也可以为其指定默认参数值。

拆分参数列表

  1. 如果一个函数所需要的参数已经存储在了列表、元组或字典中,则可以直接从列表、元组或字典中拆分出来函数所需要的这些参数。

其中列表、元组拆分出来的结果作为位置参数,而字典拆分出来的结果作为关键字参数。

python 复制代码
def SumVal(*args):
    sum = 0
    for i in args:
        sum += i
    print('求和结果为:', sum)

ls = [3, 5.2, 7, 1]
SumVal(*ls)

# 提示:*ls的作用是把列表ls中的所有元素拆分出来作为SumVal的实参,即等价于SumVal(3, 5.2, 7, 1)

1、已知函数调用Fun(**a),则a可能是( )。

A.元组

B.列表

C.集合

D.字典

正确答案:D

解析:a前面有两个*,因此a是字典;如果a前面只有一个*,则a可能是元组、列表或集合。

2、字典拆分出来的结果是作为关键字参数。

A.正确

B.错误

正确答案:A

解析:字典中的每个元素是一个键:值对,拆分后键作为形参名、而值作为实参,形成关键字参数,即形参名=实参。

返回值

1、将一个函数的运算结果返回到函数调用的地方,应使用( )。

A.print

B.return

C.break

D.continue

正确答案:B

解析:

print的作用是将数据输出到屏幕上显示;

return的作用是将一个函数的运算结果返回到函数调用的地方,并替换掉函数调用的代码以参与其他运算;

break的作用是结束其所在的那层循环;

continue的作用是结束本次循环并开始下一次循环,即如果执行到continue,则continue所在那层循环中continue后面的语句都不执行,直接跳转到循环开始的位置,再次判断是否可以继续循环。

2、如果在一个函数中没有显式地写return语句,则该函数有一个隐式的什么数据都不返回的retrun语句。

A.正确

B.错误

正确答案:A

解析:如果函数中没有写return语句,则执行到函数结束位置时会隐式执行一个不返回任何数据的return语句、以返回到函数调用的位置。

相关推荐
叼烟扛炮3 小时前
[LangChain] 学习笔记(06):突破大模型限制——结构化输出(Structured Output)
windows·笔记·学习·langchain
且从容.4 小时前
VUE3学习笔记(根据黑马教程总结)
笔记·学习
蒸蒸yyyyzwd6 小时前
关于 AI 开发相关的一些面经。
笔记·学习
卷无止境6 小时前
RAGFlow 项目全景报告:从文档解析引擎到 Agent 原生数据库
后端·python
灿飞屋7 小时前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
benchmark_cc8 小时前
单只股票五档盘口接入个人研究仓库:QuantDash 读取、校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
青少儿编程课堂9 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:中缀表达式求值解析
c++·python·算法·bfs·信息学竞赛
灿飞屋11 小时前
Kotlin与Java虚拟机四:函数
java·python·kotlin·安卓·android jetpack
坤坤子吖12 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
一晌小贪欢13 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公