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

相关推荐
Y幽谷客43 分钟前
Python加载本地大模型(Qwen3.5 8B)
python·大模型
伞伞悦读1 小时前
【第36期】Python 目录与路径详解:pathlib、文件遍历、创建、复制、移动和删除风险
开发语言·python
线上放牧人2 小时前
Windows删除图标缓存
windows·python·pyqt
qq_5470261792 小时前
Python 变量和简单数据类型
python
小弥儿3 小时前
GitHub今日热榜 | 2026-09-18:腾讯双项目上榜
学习·开源
智搜广告3 小时前
智搜广告:科技行业AI回答优化公司如何破局
大数据·python·elasticsearch·geo
IpdataCloud4 小时前
AI智能体调用工具怎么核验来源IP?归属地、网络类型与代理风险识别(含Python代码)
数据库·python·tcp/ip
2601_966949654 小时前
只拿到股票代码还不够:量化程序到底还需要哪些标的信息?——从数据建模开始理解股票元数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
蒸鱼Yuzheng4 小时前
Python 游戏测试开发怎么准备:日志解析、接口校验、并发与可维护性
自动化测试·python·测试开发·面试题·游戏测试
Ivanqhz4 小时前
BM1688 双核架构
python·深度学习·神经网络·cnn·mlir