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语句、以返回到函数调用的位置。

相关推荐
水云桐程序员6 分钟前
从零开发软件的步骤,软件开发从零到完成应该怎么做?
笔记·学习·软件构建·个人开发
David猪大卫15 分钟前
【Linux修炼】环境变量、进程地址空间
linux·c语言·经验分享·笔记·学习·ubuntu·centos
叼烟扛炮1 小时前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
❁满城风絮*3 小时前
Claude Code 学习总结
python·agent·claude
维克兜率天5 小时前
【维克】复合型CTA:趋势+套利的双轮驱动
python·学习方法
伞伞悦读5 小时前
【第76期】两张3行表左连接变5行:主键、validate与未匹配排查完整教程
人工智能·python
用户8356290780516 小时前
使用 Python 在 Excel 中添加和自定义迷你图
后端·python
用户8356290780516 小时前
使用 Python 在 Excel 图表中添加趋势线与回归方程
后端·python
特立独行的猫A6 小时前
一份 Markdown 发十个平台:cspub 一稿多投
java·后端·python
深蓝AI6 小时前
HTTPX 超时 1 秒,接口为何还能跑 2.4 秒?
python