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

函数的对象

目录
  • 一、函数对象的四大功能
      • 1、引用
      • 2、当作参数传给一个函数
      • 3、可以当作函数的返回值
      • 4、可以当作容器类型的元素
  • 二、猜年龄游戏

一、函数对象的四大功能

函数是第一类对象,即函数可以被当作数据处理

def func():print('from func')print(func)
<function func at 0x10af72f28>

1、引用

x = 'hello nick'
y = xf = func
print(f)
<function func at 0x10af72f28>

2、当作参数传给一个函数

len(x)def foo(m):m()foo(func)
from func

3、可以当作函数的返回值

def foo(x):return xres = foo(func)
print(res)
res()
<function func at 0x10af72f28>
from func

4、可以当作容器类型的元素

l = [x]function_list = [func]
function_list[0]()
from func

二、猜年龄游戏

import randomdef register():print('欢迎来到注册页面')username = input('请输入你的用户名:')pwd = input('请输入你的密码')with open('userinfo.txt', 'a', encoding='utf8') as fa:fa.write(f'{username}:{pwd}|')def login():print('欢迎来到登录页面')username = input('请输入你的用户名:')pwd = input('请输入你的密码')with open('userinfo.txt', 'r', encoding='utf8') as fr:data = fr.read()data_split = data.split('|')  # ['nick:123','tank:123']userinfo = f'{username}:{pwd}'if userinfo in data_split:print('登录成功')else:print('登录失败')def get_price_dict():"""获取奖品字典"""with open('price.txt', 'r', encoding='utf8') as f:  # price.txt右下角为什么编码,则encoding为什么编码price_dict = f.read()price_dict = eval(price_dict)  # type:dict # 获取奖品字典return price_dictdef select_price(price_dict):"""选择奖品"""price_self = dict()# 打印商品for k, v in price_dict.items():print(f'奖品编号:{k} {v}')# 获取奖品的两次循环for i in range(2):price_choice = input('请输入你需要的奖品编号:')if not price_choice.isdigit():print("恭喜你已经获得一次奖品,奖品为空!并且请输入正确的奖品编号!")continueprice_choice = int(price_choice)if price_choice not in price_dict:print('你想多了吧!')else:price_get = price_dict[price_choice]print(f'恭喜中奖:{price_get}')if price_self.get(price_get):price_self[price_get] += 1else:price_self[price_get] = 1print(f'恭喜你获得以下奖品:{price_self}')def guess_age():"""猜年龄函数"""print("欢迎来到猜年龄游戏")age = random.randint(18, 60)  # 随机一个数字,18-60岁count = 0  # 计数while count < 3:count += 1inp_age = input('请输入你想要猜的年龄:')# 判断是否为纯数字if not inp_age.isdigit():print('搞事就骂你傻逼')continueinp_age = int(inp_age)# 筛选年龄范围if inp_age > 60 or inp_age < 18:print('好好题目,18-60岁,非诚勿扰')continue# 核心逻辑if age == inp_age:print('猜中了,请选择你的奖品')price_dict = get_price_dict()select_price(price_dict)breakelif age > inp_age:print('猜小了')elif age < inp_age:print('猜大了')continuemsg = '''
1: 登录
2: 注册
3: 猜年龄游戏
'''func_dic = {'1': login,'2': register,'3': guess_age,
}print(msg)choice = input('请选择你需要的功能:')func_dic[choice]()
http://www.jsqmd.com/news/293749/

相关文章:

  • 讲讲宁夏昊远联动的服务质量,看看能否满足客户需求
  • 函数的返回值
  • 函数的嵌套
  • 可变长参数
  • 名称空间和作用域
  • 混联混动汽车动力性经济性仿真:Cruise与Simulink联合探秘
  • 基于PLC的物料分拣控制系统设计
  • 深度测评8个AI论文平台,本科生搞定毕业论文!
  • 集合类型内置方法
  • AI技术在英语培训中的应用
  • 列表数据类型内置方法
  • 数据类型分类
  • 小结
  • 异常处理
  • 字典数据类型内置方法
  • 如何为孩子挑选学习机?2026年学习机品牌全面评测与推荐,直击护眼与资源痛点
  • 详细介绍:基础开发工具--编译器g++/gcc 自动化构建make/Makefile
  • 学习机哪个品牌更专业?2026年学习机推荐与评价,针对互动性与质量痛点
  • 基于DeepSeek-R1手搓AI Agent智能体(手把手,个人电脑也能玩哦)
  • 2026年学习机品牌推荐:智慧教育趋势排名,涵盖启蒙与备考全阶段核心需求
  • 2026年本地整装装修企业排行榜,廊坊富迪装饰名列前茅
  • 探寻荧光磁粉探伤机高品质厂家如何选择
  • 2026年唐山沼气/煤气脱硫厂家TOP5推荐厂家报告(湿法/络合铁/干法领域)
  • 广州可靠的GEO优化公司费用多少,性价比哪家高
  • 聊聊慧耕有机肥生产线基本信息,其价格大概是多少?
  • 2026年学习机品牌推荐:基于多学科实测评价,针对个性化辅导与护眼痛点精准指南
  • 最新开源免费!文字转语音配音神器,支持配音且含字幕导出功能,完全免费且仅6M tts-tauri配音工具
  • 告别手抄!手写模拟器它来啦,1分钟出手写稿!Win+安卓双端,罚抄作业/做手写笔记超省时间!
  • 2026年知名的公务车品牌厂家推荐及选择参考
  • 2026年折叠滤芯厂家推荐:技术趋势与合规评测,涵盖生产与品控全流程痛点分析