当前位置: 首页 > news >正文

008_函数

1.定义函数

def greet_user():
"""显示简单的问候语"""
print("Hello!")

greet_user()

1.1 向函数传递信息

def greet_user(username):
"""显示简单的问候语"""
print(f"Hello, {username.title()}!")

greet_user('张三')

1.2 实参和形参

def greet_user(username): # greet_user() 函数定义中 变量username是一个形参
"""显示简单的问候语"""
print(f"Hello, {username.title()}!")

greet_user('张三') # greet_user() 函数调用中,'张三'是一个实参,实参会传递给greet_user()函数,这个值会被赋值给变量username

2.传递实参(位置实参和关键字实参)

2.1 位置实参

def users_info(user_name, user_age):
"""打印用户信息"""
print(f"Hello, {user_name.title()}!, 你的年龄是{user_age}")

users_info('张三', 14)

def users_info(user_name: str, user_age: int): # 进阶用法 类型提示
"""打印用户信息"""
print(f"Hello, {user_name.title()}!, 你的年龄是{user_age}")

users_info("李四", 20) # 位置实参,位置很重要
users_info("王五", 21)

2.2 关键字参数

def users_info(user_name, user_age):
"""打印用户信息"""
print(f"Hello, {user_name.title()}!, 你的年龄是{user_age}")

users_info(user_age=28, user_name="马六") # 关键字参数无视顺序

2.3 形参指定默认值

def users_info(user_name, user_age=18): # 有默认值的形参要放到没有默认值的形参后面
"""打印用户信息"""
print(f"Hello, {user_name.title()}!, 你的年龄是{user_age}")

users_info(user_name="马六") # 默认设置user_age=18 # 等效调用
users_info("马六") # 默认设置user_age=18 # 等效调用
users_info("马六", 21) # 等效调用
users_info("马六", user_age=21) # 等效调用

3.返回值

3.1 返回简单值

def users_name(first_name, last_name):
"""返回标准格式的名字"""
full_name = f"Hello, {first_name} {last_name}"
return full_name.title()
name = users_name("zhang", "san")
print(name)

3.2 让实参变成可选的

def users_name(first_name, last_name, middle_name=''):
"""返回标准格式的名字"""
if middle_name:
full_name = f"Hello, {first_name} {middle_name} {last_name}"
else:
full_name = f"Hello, {first_name} {last_name}"
return full_name.title()
name = users_name("zhang", "san")
print(name)
name = users_name("wang", "zi", 'ma')
print(name)

3.3 返回字典

def users_info(first_name: str, last_name: str, middle_name='', age=18):
"""返回一个字典,其中包含个人信息"""
if middle_name:
full_name = {'name': first_name + middle_name + last_name, 'age': age}
else:
full_name = {'name': first_name + last_name, 'age': age}
return full_name

user = users_info('张', '三')
print(user) # {'name': '张三', 'age': 18}

3.4 结合使用函数和while循环

def users_name(first_name, last_name, middle_name=''):
"""返回标准格式的名字"""
if middle_name:
full_name = f"Hello, {first_name} {middle_name} {last_name}"
else:
full_name = f"Hello, {first_name} {last_name}"
return full_name.title()

这是一个while无限循环

while True:
print('输入“q”退出')
first_name = input("First name:")
if first_name == 'q':
break
middle_name = input("Middle name:")
if middle_name == 'q':
break
last_name = input("Last name:")
if last_name == 'q':
break
user_name = users_name(first_name, last_name, middle_name)
print(user_name)

http://www.hskmm.com/?act=detail&tid=28774

相关文章:

  • 内存分析记录
  • 详细介绍:构建生产级多模态数据集:视觉与视频模型(参照LLaVA-OneVision-Data和VideoChat2)
  • 2025 年图书杀菌机生产厂家最新推荐排行榜:聚焦高效杀菌技术与优质服务,优质企业全面盘点自助图书/臭氧图书/消毒图书/图书杀菌机厂家推荐
  • 公网服务器下的dify安装模型插件的相关问题和操作
  • vscode 生成代码片段
  • MySQL根据表生成实体类
  • 2025票务系统最新推荐榜:高效便捷与用户体验俱佳的优质选择
  • 【黑马python】基础 3.Python 判断语句 if-else
  • 有度新版本:反向登录、文件路径自定义、有度极速版…管理更自主,切换更顺畅
  • C#利用委托实现多个窗体间的传值
  • 2025常州微弧氧化批发厂家最新推荐榜:技术领先与优质服务双
  • new操作符的手动实现
  • JS使用Regex校验出现卡顿
  • 2025舒适轮胎厂家最新推荐榜:静音耐磨,驾驶体验再升级!
  • 2025 净化铝型材十大品牌之一优选,推荐龙新铝业,最快24小时内发货
  • 手写Promise
  • 双列集合
  • 二项式反演
  • 2025 权威推荐!净化铝型材品牌 TOP5 排行榜:实力厂家精选,品质之选不容错过
  • 关于HashMap
  • sar(System Activity Reporter 系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一。
  • 车辆主动悬架线性最优控制(LQR)系统
  • 2025环保/植物/净醛/健康/无味腻子粉厂家推荐榜:专注多场景墙面基底解决方案供应!
  • 2025 泰国立体/高位/仓储/托盘/重型/流利式/贯通式/穿梭车/模具货架厂家推荐排行榜:聚焦多场景存储需求,精选优质供应商!
  • 2025 工控/核心板/工业/嵌入式主板板卡厂家推荐排行榜:聚焦多领域智能硬件核心供应!
  • 计划任务在不管用户是否登录都要运行时,bat不能正常运行处理办法
  • 2025 高压/高压空气/氦气/氩气压缩机厂家推荐榜:聚焦多场景压缩空气解决方案!
  • 2025 温室/蔬菜/花卉/单栋/玻璃温室/连栋/连栋膜温室/薄膜/塑料/钢架大棚厂家推荐榜:聚焦多场景种植需求,提供专业设施解决方案!
  • Delta并联机器人正逆解实现
  • SQL查询,直接生成json结果