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 小时前
langgraph 后端发自定义数据,前端接收方法概括
人工智能·python
benchmark_cc5 小时前
用 QuantDash 读取单只股票五档盘口:抽样、缺失值检查与复现记录
python·数据分析·pandas·量化交易·股票数据·quantdash
曲径海盗5 小时前
【Python 学习第 55 天】列表基础
python·学习笔记·编程入门
专注仿真6 小时前
知识问答模型用到的算法集详解及代码实例
python·算法·代码·大模型训练·控制算法
jyOverQ6 小时前
我写了一个 CSDN Markdown 图片助手:告别本地图片逐张上传
python·工具·csdn
刘马想放假9 小时前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket
2601_9679873710 小时前
python判断变量名不要调用任何函数实现
python·函数·语法·判断·变量名
卷无止境11 小时前
SALib敏感性分析的python库学习笔记
后端·python
duansamve12 小时前
Python3+Flask+PostgreSQL18+Vue3项目生产环境用docker如何部署?
python·docker·flask
特立独行的猫A12 小时前
少 3 个环节、少 1 次 ABI、少 3500 行代码:cj-tauri 与 Ionic/Capacitor 的鸿蒙桥接机制对比
java·后端·python