第三篇:函数之对象

1. 函数是第一类对象,意味着函数可以当作数据去使用

 1 def foo():
 2     print(‘from foo‘)
 3
 4
 5 #1、可以被引用
 6 # print(foo)
 7 # func=foo
 8 # print(func)
 9 # func()
10
11 #2、可以当作参数传给另外一个函数
12 # def bar(x): #x=foo的内存地址
13 #     print(x)
14 #     x()
15 #
16 # bar(foo)
17
18 #3、可以当作函数的返回值
19 # def bar():
20 #     return foo
21 #
22 # f=bar()
23 # # print(f is foo)
24 # f()
25
26 #4、可以当作容器类型的元素
27 # def f1():
28 #     print(‘from f1‘)
29 #
30 # def f2():
31 #     print(‘from f2‘)
32 #
33 # l=[f1,f2]
34 # print(l)
35 # l[1]()

实际case

 1 def pay():
 2     print(‘pay function‘)
 3
 4 def withdraw():
 5     print(‘withdraw function‘)
 6
 7 def auth():
 8     print(‘auth function‘)
 9
10 def shopping():
11     print(‘shopping function‘)
12
13 def transfer():
14     print(‘transfer function‘)
15
16 func_dic={
17     ‘1‘:pay,
18     ‘2‘:withdraw,
19     ‘3‘:auth,
20     ‘4‘:shopping,
21     ‘5‘:transfer
22 }
23
24 # print(func_dic)
25 # func_dic[‘2‘]()
26
27 while True:
28     print("""
29     0 退出
30     1 支付
31     2 取款
32     3 认证
33     4 购物
34     5 转账
35     """)
36     choice=input(‘请输入您要执行的操作:‘).strip() #choice=‘123‘
37     if choice == ‘0‘:break
38     if choice not in func_dic:
39         print(‘输入错误的指令,请重新输入‘)
40         continue
41
42     func_dic[choice]() #

原文地址:https://www.cnblogs.com/yspass/p/9325678.html

时间: 2024-11-01 22:36:26

第三篇:函数之对象的相关文章

【SSH三大框架】Hibernate基础第三篇:实体对象的三种状态以及get、load、persist三个方法的详解

一.Hibernate中实体对象分为三种状态:瞬态.持久.脱管 瞬态(transient):这种状态下的实体对象,数据库中没有数据与之对应,超过作用域会被JVM垃圾回收器回收,一般是new出来的并且与Session没有任何关系的对象. 持久(persistent):数据库中有数据与之对应,当前与Session有关联,并且相关联的Session并没有关闭,事务没有提交.PS:持久对象发生改变的时候,在事务提交的时候会影响到数据库中. 脱管(detached):数据库中有数据与之对应,但当前没有Se

深入理解javascript函数系列第三篇

前面的话 函数是javascript中特殊的对象,可以拥有属性和方法,就像普通的对象拥有属性和方法一样.甚至可以用Function()构造函数来创建新的函数对象.本文是深入理解javascript函数系列第三篇--属性和方法 属性 [length属性] 函数系列第二篇中介绍过,arguments对象的length属性表示实参个数,而函数的length属性则表示形参个数 function add(x,y){ console.log(arguments.length)//3 console.log(

HttpApplication处理对象与HttpModule处理模块 (第三篇)

一.HttpApplication对象简述 在HttpRuntime创建了HttpContext对象之后,HttpRuntime将随后创建一个用于处理请求的对象,这个对象的类型为HttpApplication. HttpRuntime管理一个定义在System.Web命名空间下的HttpApplicationFactory类的时候,HttpApplicationFactory通过工厂模式管理HttpApplication对象.在HttpApplicationFactory内部维护了一个HttpA

python成长之路第三篇(1)_初识函数

目录: 函数 1.为什么要使用函数 2.什么是函数 3.函数的返回值 4.文档化函数 5.函数传参数 文件操作(二) 1.文件操作的步骤 2.文件的内置方法 函数: 一.为什么要使用函数 在日常写代码中,我们会发现有很多代码是重复利用的,这样会使我们的代码变得异常臃肿,比如说: 我们要写一个验证码的功能 例子: 比如说我们要进行一些操作,而这些操作需要填写验证码 验证码代码:  1 import random   2 number_check = ''   3 for i in range(0,

第三篇 SQL Server安全主体和安全对象

本篇文章是SQL Server安全系列的第三篇,详细内容请参考原文. 一般来说,你通过给主体分配对象的权限来实现SQL Server上的用户与对象的安全.在这一系列,你会学习在SQL Server实例中通过权限授权来执行操作及访问安全对象.在SQL Server中重要的主体是角色,你会学习角色可以让安全管理比使用单独用户更容易.你也会学习SQL Server的安全对象.授权Authentication is only part of accessing all of the goodies in

C#4.0语法糖之第三篇: 参数默认值和命名参数 对象初始化器与集合初始化器

今天继续写上一篇文章C#4.0语法糖之第二篇,在开始今天的文章之前感谢各位园友的支持,通过昨天写的文章,今天有很多园友们也提出了文章中的一些不足,再次感谢这些关心我的园友,在以后些文章的过程中不断的完善以及自我提高,给各位园友们带来更好,更高效的文章. 废话就说到这里,下面正式进入我们的今天的C#4.0语法糖,今天给大家分享一下参数默认值.命名参数.对象初始化器和集合初始化器. 参数默认值和命名参数:方法的可选参数是.net 4.0最新提出的新的功能,对应简单的重载可以使用可选参数和命名参数混合

Qt DLL总结【二】-创建及调用QT的 DLL(三篇)good

目录 Qt DLL总结[一]-链接库预备知识 Qt DLL总结[二]-创建及调用QT的 DLL Qt DLL总结[三]-VS2008+Qt 使用QPluginLoader访问DLL 开发环境:VS2008+Qt4.7.4 最近看了不少Qt的DLL例子,总结一下如何创建和调用QT 动态链接库. 先讲一下对QT动态链接库的调用方法,主要包括: 1.显式链接DLL,调用DLL的全局函数,采用Qt的QLibrary方法 2.显示链接DLL,调用DLL中类对象.成员函数.(通过对象即可实现类成员函数的调用

SylixOS ARM BSP 第三篇【bspInit.c】

此篇博客为 SylixOS ARM BSP 编写连载的第三篇,主要介绍 bspInit.c 文件具体实现. bspInit.c 为 BSP 操作系统初始化部分代码,通常由 startup.S 初始完基本处理器参数后调用,下面以 S3C2440A 处理器为例,逐块介绍 bspInit.c 代码. SylixOS ARM BSP 第二篇中提到 startup.S 初始化完成会将会调用 bspInit() 函数,此函数用于初始化操作系统,并开始多任务调度. int bspInit (void) {  

第三篇:用SOUI能做什么?

SOUI-DEMO界面预览 在回答SOUI能做什么之前,先看看SVN中demo工程的界面截图: 使用SOUI实现上面的界面主要的工作全在配置几个XML文件,基本不需要写C++代码.(如何配置XML布局将在后续文章中讲解) 从零开始生成一个使用SOUI的应用程序 以SOUI的demo为例,我们看在SOUI中如何一步一步实现一个应用程序. 首先使用Win32应用程序向导生成一个空项目. 新建一个如demo.cpp文件,定义一个_tWinMain函数. int WINAPI _tWinMain(HIN

SQL Server索引的维护 - 索引碎片、填充因子 <第三篇>

实际上,索引的维护主要包括以下两个方面: 页拆分 碎片 这两个问题都和页密度有关,虽然两者的表现形式在本质上有所区别,但是故障排除工具是一样的,因为处理是相同的. 对于非常小的表(比64KB小得多),一个区中的页面可能属于多余一个的索引或表---这被称为混合区.如果数据库中有太多的小表,混合区帮助SQL Server节约磁盘空间. 随着表(或索引)增长并且请求超过8个页面,SQL Server创建专用于该表(或索引)的区并且从该区中分配页面.这样一个区被称为统一区,它可以为多达8个相同表或索引的