Python Day-参数类型,变量的类型
大家好,我们又见面了啊~本文《Python Day-参数类型,变量的类型》的内容中将会涉及到等等。如果你正在学习文章相关知识,欢迎关注我,以后会给大家带来更多文章相关文章,希望我们能一起进步!下面就开始本文的正式内容~
参数类型:
1)位置参数
2)可变长度参数
3)关键字参数
4)默认参数
5)关键字仅参数
6)位置仅参数
7)可变默认参数
>参考:https://builtin.com/software-engineering-perspectives/arguments-in-python
1)位置参数:
- >在函数调用期间,通过参数传递的值应按照函数定义中的参数顺序。这称为位置参数。
- >关键字参数应仅遵循位置参数。
>示例:1
#positional arguments
def display(first_name, last_name):
print("welcome", first_name, last_name)
display("guru", "prasanna")
>输出:
欢迎大师prasanna
def find_total(l):
total = 0
for num in l:
total+=num
print(total)
marks = [90,56, 78]
find_total(marks)
>输出:
224
2)变量长度参数:
->如果我们不知道该函数所需的参数数量,我们可以使用任意参数。
>
->任意参数有两种类型:- arbitrary positional arguments
- arbitrary keyword arguments
- >
- >示例:
def find_total(*l):
total = 0
for num in l:
total+=num
print(total)
mark1 = 100
mark2 = 90
mark3 = 87
find_total(mark1, mark2,mark3)
find_total(45,54)
find_total()
>输出:
277 99 0
任意关键字参数:
- >示例:
-
def login(**args): print(args) login(name='raja', age=25, city='madurai')>输出:
{'name': 'raja', 'age': 25, 'city': 'madurai'}
3)关键字参数:
- >所有参数均为关键字参数。
> >示例:
def display(*marks,name):
print('welcome', name)
print(marks)
display(90,80,name="lakshmi")
display(80,name="guru")
>输出:
welcome lakshmi (90, 80) welcome guru (80,)
4)默认参数:
默认参数是定义函数时提供的值。
> >默认参数在函数调用过程中成为可选的。>
如果在函数调用过程中为默认参数提供值,则它覆盖了默认值。- 该函数可以具有任意数量的默认参数。 >
- 默认参数应遵循非默认参数。 >
- >示例:
def login(username, password="admin"):
print(username, password)
login("abcd", "abcd")
login("pqrs")
abcd abcd pqrs admin
>
默认,关键字和位置参数的重要点要记住
5)关键字仅参数:
>
>示例:
def add(*, no1, no2):
return no1+no2
print(add(10,20)) #typeerror
print(add(no1=100,no2=200))
>输出:
typeerror 300
6)只有位置参数:
-> /用于从逻辑上将仅位置参数与其余参数分开。
->参数可能是 /键 - 键或关键字。>
def add(a,b,/,c,d):
return a+b+c+d
print (add(3,4,c=1,d=2))
print (add(3,4,2,d=1))
>输出:
10 10
7)可变默认参数>
#mutable default arguments:
def add(no, l=[]):
l.append(no)
return l
print(add(10))
print(add(20))
>输出:
[10] [10, 20]
>函数返回字典:
def display(player_names, scores):
return dict(zip(player_names, scores))
player_names = ['virat', 'rohit']
scores = [100,105]
result = display(player_names, scores)
print(result)
>输出:
{'virat': 100, 'rohit': 105}
列表是可变的:def modify(l):
l.append(100)
print(f'inside modify, {l}')
l = [10,20,30]
print(f'outside modify {l}')
modify(l)
print(f'outside modify2 {l}')
>输出:
outside modify [10, 20, 30] inside modify, [10, 20, 30, 100] outside modify2 [10, 20, 30, 100]
>说明:
>在调用修改(l)之前,列表为[10,20,30]。
>
函数调用后,原始列表现在为[10、20、30、100],因为列表是可变的,并通过参考。
变量类型:
本地变量:
>示例:
def shopping():
print(amount)
amount = 1000
print(amount)
shopping()
global
关键字可修改变量。
amount = 1000
def shopping():
print(amount)
shopping()
>输出: 1000
>示例:2
amount = 10000 #global variable
def shopping():
global amount
print("total amount for trip is",amount)
amount = 1000 #local variable
print("shopping amount",amount)
shopping()
>输出:
total amount for trip is 10000 shopping amount 1000
注意: ->本地和全局变量可以具有相同的名称。 ->本地变量将是优先的。 >内部函数:
>内部函数(或嵌套函数)是在另一个函数内定义的函数。>
>非局部变量(在嵌套函数中使用):
>示例:
def open_tank():
tank = 2
print(f'inside open_tank {tank}')
def fill_petrol():
nonlocal tank
tank = tank + 3
print(f'inside fill_petrol {tank}')
fill_petrol()
open_tank()
>输出:
Inside open_tank 2 Inside fill_petrol 5
以上就是《Python Day-参数类型,变量的类型》的详细内容,更多关于的资料请关注golang学习网公众号!
ApplicationContext的实现
- 上一篇
- ApplicationContext的实现
- 下一篇
- DSA&#s开发旅程的介绍
-
- 文章 · python教程 | 2天前 | logging · Python教程 · 后端开发 · 日志排查 · Python logging 日志重复 propagate addHandler basicConfig
- Python logging 日志重复打印排查:为什么一条记录输出了两遍
- 324浏览 收藏
-
- 文章 · python教程 | 1星期前 | 默认值 · python · 数据建模 · dataclass · default_factory · field · Python 数据类 Field 可变默认值 dataclass default_factory
- Python dataclass 默认值完整工作流:从可变默认值到 default_factory
- 228浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- ljg-skills
- ljg-skills 是李继刚开源的 AI 技能与提示词集合,面向大模型使用者整理了一批可复用的 prompt、角色设定和任务技能模板,适合用于学习提示词设计、搭建个人 AI 工作流和沉淀团队常用智能体能力。
- 2937次使用
-
- MELO音乐
- MELO音乐是一站式AI视频与音乐制作助手,对标suno, udio的高品质体验。提供伴奏生成、原创写词、无损导出、哼唱识曲、混音变声等全套音频与短视频编辑工具。无论是流行Kpop、电音说唱、民谣古风、摇滚儿歌还是商用轻音乐,MELO为你免费谱曲,轻松做同款!
- 2718次使用
-
- UniScribe
- UniScribe 是一款 AI 音视频转文字与内容整理工具,支持上传音频、视频文件或粘贴 YouTube 链接,自动生成转写文本、摘要、思维导图和关键问题,并支持多格式导出,适合会议记录、课程学习、访谈整理和内容创作复盘。
- 2652次使用
-
- 剧云
- 剧云是专业中文剧本创作平台,安全稳定运行十余年,集成AI编剧、剧本医生审核、人物小传、剧情关系图、大纲编写、多人协作、Word导入导出、版权管控功能,数据安全防护,轻松高效创作剧本。
- 2884次使用
-
- 万象有声
- 万象有声,一个专为有声创作者打造的新一代智能有声内容创作平台。平台提供专业的智能拆章、智能画本编辑、AI配音、AI生成音效、后期制作、智能对轨、智能审听等有声创作全流程工具,可以帮助创作者高效、低成本创作出引人入胜的有声作品。立即体验,让有声书制作更简单!
- 2828次使用
-
- Python监控网页状态:requests异常处理实战
- 2026-05-29 501浏览
-
- TensorFlow模型部署为API的TF Serving方法
- 2026-05-26 501浏览
-
- Python字符串编码转换:encode与decode详解
- 2026-05-16 501浏览
-
- TensorFlow裁剪无用算子方法详解
- 2026-05-15 501浏览
-
- httpx 如何设置代理认证(Proxy-Authorization)
- 2026-05-05 501浏览

