介绍 本文以ATM项目为背景,介绍一个比较实用的编程技巧,使用装饰器将项目中的指定函数添加到字典中. 利用字典通过key访问value的特点,实现用户输入编号,通过字典直接获取并调用编号对应的功能函数. # 实现的目标:让用户输入使用功能的编号,程序调用相应的函数. 基础版-if条件判断 def login(): print('this is login function') def register(): print('this is register function') def trans…
认识函数对象(Function Object) 可以用function关键字定义一个函数,对于每个函数可以为其指定一个函数名,通过函 数名来进行调用.这些都是代码给用户的印象,而在JavaScript解释执行的时候,实际上每 个函数都是被维护为一个对象,这就是本小节将要介绍的函数对象(Function Object). 函数对象与其它用户所定义的对象有着本质的区别,这一类对象被称之为内部对象,例 如日期对象(Date).数组对象(Array).字符串对象(String)都是属于内部对象.换句话…
函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解. javascript中的函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的.通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递.在继续讲述之前,先看一下函数的使用语法: 以下是引用片段:function func1(…){…}  var func2=function(…){…};  var func3=function func4(…){…};  var func5=ne…
js中函数和对象的关系: 什么是对象?根据W3C上面的解释JS中所有事物都是对象,对象是拥有属性和方法的数据,由此可以看出除了基 本值类型不是对象(number.string.Boolean.Undefined),剩下的引用类型(函数.数组.null...)都是对象,也有人说对象是若干属性的集合. 对象是通过函数创建的,而函数又是一种对象. 函数对象(Function Object): 可以用function关键字定义一个函数,对于每个函数要为其指定一个函数名,通过函数名来进行调用, 而在Jav…
http://hi.baidu.com/gdancer/blog/item/a59e2c12479b4e54f919b814.html jQuery的一些写法就是基于这篇文章的原理的..     函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解.javascript中的函数不同于其他的语言,每个函 数都是作为一个对象被维护和运行的.通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递.在继续讲述之前,先看一下函数的 使用语法: 以下为…
函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解: javaScript中的函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的,通过函数对象的性质,可以很方便的将一个函数赋值 给一个变量或者将函数作为参数传递,我们先来看看函数的使用语法: function func1(...){...} var func2 = function(...){}var func3 = function func4(...){...} var func5 = new Fu…
 复习   1.字符串的比较; 2.函数的参数; ******实参与形参的分类: 3.函数的嵌套调用:     # 字符串的比较#  -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 # 函数的参数# 1)实参与形参:# -- 形参:在函数定义时()中出现的参数 # -- 实参:在函数调用时()中出现的参数 # 2)实参的分类# -- 位置实参:给位置形参,必须按位置# -- 关键字实参:给位置与关键字形参,不需要按顺序 # 3)形参的分类# -- 无值位置# -- 有值位置#…
复习 # 字符串的比较 # -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 # 函数的参数 # 1)实参与形参: # -- 形参:在函数定义时()中出现的参数 # -- 实参:在函数调用时()中出现的参数 # 2)实参的分类 # -- 位置实参:给位置形参,必须按位置 # -- 关键字实参:给位置与关键字形参,不需要按顺序 # 3)形参的分类 # -- 无值位置 # -- 有值位置 # -- 可变长位置 # -- 有无值关键字 # -- 可变长关键字 def fn(a, b=…
#### 三元表达式: 就是if....else...的语法糖 # -- 1) 只能解决if...else...结构,其他if分支结构都不管 # -- 2)一个分支提供一个结果: 如果一个分支提供了多个结果, 将多个结果通过元组返回 # eg # num = int(input('num:')) # if num > 0: # print('正数') # else: # print('非整数') # 这是之前的用法 # 三元表达式简化写法 # num = int(input('num:')) #…
一 函数对象 一 函数是第一类对象,即函数可以当作数据传递 #1 可以被引用 #2 可以当作参数传递 #3 返回值可以是函数 #3 可以当作容器类型的元素 二 利用该特性,优雅的取代多分支的if def foo(): print('foo') def bar(): print('bar') dic={ 'foo':foo, 'bar':bar, } while True: choice=input('>>: ').strip() if choice in dic: dic[choice]()…