If function in python

We can easily define a if_function which seemingly does exactly what the if statement does. However, this is not the entire story.

 1 ## if_function is not the same as the built-in if statement
 2
 3 def if_function(cond, true_result, false_result):
 4     if cond:
 5         return true_result
 6     else:
 7         return false_result
 8
 9 flag = 0
10
11 def cond():
12     return flag
13
14 def true_statement():
15     global flag
16     flag += 1
17     return flag
18
19 def false_statement():
20     global flag
21     flag += 1
22     return flag
23
24 def using_if_statement():
25     if cond():
26         return true_statement()
27     else:
28         return false_statement()
29
30 def using_if_function():
31     return if_function(cond(), true_statement(), false_statement())
32
33 print using_if_statement()
34 print using_if_function()
35
36 ## Output
37 ## 1
38 ## 2
时间: 2024-12-25 07:38:46

If function in python的相关文章

python中的__metaclass__

什么是元类: python中类也是一种对象, 可以称为类对象. 元类就是用来创建类对象的"东西". 你创建类就是为了创建类的实例对象, 不是吗? 但是我们已经学习了python中的类也是对象. 元类就是用来创建这些类对象的, 元类就是类的类, 你可以这样理解: MyClass = MetaClass() MyObject = MyClass() 你已经看到了type可以这样来动态的创建类: MyClass = type("MyClass", (), {}) 这是因为

python 2.7.6环境搭建

为何写脚本 每次用新的机器,都要把python的环境给安装一遍~so,这是一件很操蛋的问题,就shell练手写了一个code,嘿嘿,渣渣技术~ 测试环境 我爱vagrant,一条命令直接还原成干净的测试环境,大爱啊~ 脚本如下: #!/bin/bash # Auther: zhuima # Date:   2014-06-26 # Function: create python env # REVTAL=0 # import Functions  . /etc/rc.d/init.d/funct

Python标准库:迭代器Itertools

Infinite Iterators: Iterator Arguments Results Example count() start, [step] start, start+step, start+2*step, ... count(10) --> 10 11 12 13 14 ... cycle() p p0, p1, ... plast, p0, p1, ... cycle('ABCD') --> A B C D A B C D ... repeat() elem [,n] elem

[Python-MATLAB] 在Python中调用MATLAB的API

可以参考官方的说明文档: http://cn.mathworks.com/help/matlab/matlab_external/get-started-with-matlab-engine-for-python.html MATLAB Engine API的使用文档: http://cn.mathworks.com/help/matlab/matlab-engine-for-python.html 原材料: 1.MATLAB 2015a  32位的 2.Python 2.7.13    32位

广东海洋大学 电子1151 孔yanfei python语言程序设计 第三周

四.流程控制 在这块,Python与其它大多数语言有个非常不同的地方,Python语言使用缩进块来表示程序逻辑(其它大多数语言使用大括号等).例如: if age < 21: print("你不能买酒.") print("不过你能买口香糖.") print("这句话处于if语句块的外面.") 这个代码相当于c语言的: if (age < 21) { print("你不能买酒.") print("不过你能买

javascript与python的比较

1:javascript与python大小写皆敏感 2:javascript使用{}来组织代码块,与大部分语言相同  python使用缩进来组织代码块,与大部分语言不同,请务必遵守约定俗成的习惯,坚持使用4个空格的缩进. 3:javascript函数,变量置顶,函数参数可不定义.  python函数,变量不置顶,函数参数要明确 4:javascript省略参数function(...args)   python省略参数function(*args) 5:map方法 javascript [1,2

python学习总结(函数进阶)

-------------------程序运行原理------------------- 1.模块的内建__name__属性,主模块其值为__main__,导入模块其值为模块名 1.创建时间,py文件比pyc文件新,则从新生成pyc. 2.magic num,做运行前版本测试,版本不同重新生成pyc. 3.PyCodeObject对象,源代码中的字符串,常量值,字节码指令,原始代码行号的对应关系. 2.LEGB规则 1.Local :本地 当前所在命名空间(如函数,模块),函数的参数也属于命名空

Master the 10 Most Common Python Programming Problems - 10大最常见的Python编程错误

http://blog.csdn.net/pipisorry/article/details/45175457 Introduction 本文介绍python编程中很难捕捉10大错误 (Note: This article is intended for a more advanced audience than Common Mistakes of Python Programmers, which is geared(适合) more toward those who are newer t

Python 函数装饰器入门

原文链接: --> A guide to Python's function decorators Python功能强劲,语法表现力强,尤其装饰器深深的吸引着我.在设计模式中,装饰器可以在不使用子类的情况下,动态的改变函数,方法以及类的功能.这个功能非常有用,特别在你想扩展函数的功能同时又不想改变原有的函数.的确,我们任意的实现装饰器设计模式,但是,python通过提供简单的语法和特性让装饰器的实现变的如此简单. 在本文中,我将用一组例子来深入浅入python 函数装饰器的功能,所有的例子都是在