首页 > 其他分享 >2023.3.11

2023.3.11

时间:2023-03-11 21:14:37浏览次数:46  
标签:11 info name 形参 2023.3 fruit user 实参

传递实参
函数定义中可能包含多个形参,因此函数在调用时也就包含多个实参。向函数传递实参的方式很多,有位置实参、关键字实参,还可使用列表和字典。

1.位置实参
使用位置实参要求实参的顺序与形参的顺序相同,否则在调用函数的过程中会发生类型错误或者逻辑错误。
下面是位置实参应用的例子。

def user_info(name, fruit):
"""打印用户信息"""
print('My name is ' + name.title() + '.')
print('I like ' + fruit + ' best.')

user_info('emma','apple') #正确调用,实参与形参顺序一一对应
user_info('apple', 'emma') #错误调用
1
2
3
4
5
6
7
运行结果如下图所示。

由运行结果可以看到,位置实参一定要和形参顺序一致,这样才不会使错误发生。

2.关键字实参
关键字实参中每个实参都是由变量名和值组成的,它传递给函数的实参是名称值对,因为在实参中将名称和值已经关联起来了,所以无需再考虑函数调用中的实参顺序。
下面是关键字实参应用的例子。

def user_info(name, fruit):
"""打印用户信息"""
print('My name is ' + name.title() + '.')
print('I like ' + fruit + ' best.')

user_info(name = 'emma',fruit = 'apple')
user_info(fruit = 'apple', name = 'emma')
1
2
3
4
5
6
7
运行结果如下图所示。

由运行结果可知,使用关键字实参无需再担心实参与形参的顺序对应一致,只需要将名称和值对应上即可。

3.给形参指定默认值
编写函数时,可给每个形参指定默认值,若调用的函数提供了实参,Python将使用指定的实参值,如果没有提供实参,将使用形参的默认值。因此,给形参指定默认值后,可在函数调用中省略相应的实参。
下面是给形参指定默认值的例子。

def user_info(name='emma', fruit='apple'): #给形参指定默认值
"""打印用户信息"""
print('My name is ' + name.title() + '.')
print('I like ' + fruit + ' best.')

user_info() #省略已有默认值的实参
user_info('alice') #只传一个实参,默认传给第一个位置
user_info(fruit='pear') #如果要传参给非第一位置,使用关键字实参的方法
user_info('lisa', 'banana') #提供实参则覆盖默认值
1
2
3
4
5
6
7
8
9
运行结果如下图所示

原文链接:https://blog.csdn.net/weixin_42570192/article/details/123805206

内容是抄的,只供自己复习使用。转发记得标出处!!!!

标签:11,info,name,形参,2023.3,fruit,user,实参
From: https://www.cnblogs.com/zhanshuang/p/17206972.html

相关文章

  • 3.11号今日总结
    1.基本用法与事件处理:1)RadioButton(单选按钮)如题单选按钮,就是只能够选中一个,所以我们需要把RadioButton放到RadioGroup按钮组中,从而实现单选功能!先熟悉下如何使用Rad......
  • 2023/3/8 && 2023/3/11 模拟总结
    开摆,嘿嘿,开摆!2023/3/8IOI赛制/6道题/部分文件io集训期间的第一次模拟,看到是IOI赛制感觉好拿分,于是就挺放松的。开考之后看到T1,胡了一个二维前缀和暴力做法,爽拿3......
  • 2023年3月11日软工日报
    今天早上一直休息,下午写了个四级阅读,太菜,没法过,随缘吧,晚上我把那个app打卡不能重复打卡功能写了下。展示下,但是对我是知道的,我只是展示我填的语句switch(view.get......
  • 代码随想录11天逆波兰表达式求值
    150. 逆波兰表达式求值给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。注意:有效的算......
  • c++11标准右值引用, 移动语义和完美转发
    0.序言学习自C++RvalueReferencesExplained(thbecker.net)1.引入1.1拷贝间接资源如果一个类的成员变量有指针,例如classMyClass{public:T*element;}......
  • 2023-03-11 Java中的动态数组
    类似C++中的vector,动态数组需要满足以下功能增(insert)删(remove)改(set)查(get和contain)支持泛型自动扩容和缩容上面的实现实际相当于JDK标准库中的java.util......
  • 11、NFS-CSI网络存储、SC提供动态制备模板 PV和PVC动态制备
    PV和PVC在Pod级别定义存储卷有两个弊端◼卷对象的生命周期无法独立于Pod而存在◼用户必须要足够熟悉可用的存储及其详情才能在Pod上配置和使用卷PV和PVC可用于降低这种耦......
  • Keil MDK6要来了,将嵌入式软件开发水平带到新高度,支持跨平台(2023-03-11)
    注:这个是MDK6,不是MDK5AC6,属于下一代MDK视频版:https://www.bilibili.com/video/BV16s4y157WF一年一度的全球顶级嵌入式会展EmbeddedWorld2023上,MDK6将展示预览版效......
  • ES6-ES11 ES11 BigInt
    原视频<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title......
  • ES6-ES11目录
    ES6-ES11let变量声明以及声明特性ES6-ES11let实践案例ES6-ES11const声明常量以及特点ES6-ES11变量的解构赋值ES6-ES11模板字符串ES6-ES11对象的简化写法ES6-ES......