今天看了知乎@萧井陌的编程入门指南,想重温一下 <python简明教程>,对global的用法一直不太熟练,在此熟练一下,并实践一下python中list.tuple.set作为参数的区别. 在函数内部定义变量时,他们与函数外部具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是局部的,这称为变量的作用域,示例如下: def func_local(x): print 'x is', x x = 2 print 'Chanaged local x to',x x = 50 func_lo
python中没有switch case类似的语句,但是下面的IF语句却与之类似,却又不同: A = B = C = D = E = 1 if A == 1: B=2 elif B ==2: C=3 elif C == 3: D=4 else: E=5 print(A,B,C,D,E) 执行结果是什么? 代码只会执行B=2的赋值语句,其它的判断和赋值不会执行. 这样的语句的运行规则是这样的: 1.判断顺序是自上而下 2.不是每个elif语句都判断,只有上面一个if或者elif判断条件为假时,
学习Python中的lambda函数的时候,才发现原来Python中的AND和OR还可以有一些别的用法.Python中的布尔逻辑计算的结果并非返回布尔值,而是返回它们相互之间的某一个.文章的部分例子来源于Dive Into Python. AND AND的表达式返回所遇到的第一个假值,如果表达式中无假值,则返回表达式中最后一个值.在Python中,0.‘’.[].().None这五个值在布尔环境中为假,例子如下: >>>() and 'foo' () >>>'pytho
return 语句就是讲结果返回到调用的地方,并把程序的控制权一起返回 程序运行到所遇到的第一个return即返回(退出def块),不会再运行第二个return. 要返回两个数值,写成一行即可: def a(x,y): if x==y: return x,y print a(3,3)<br><br>>>> 3,3 但是也并不意味着一个函数体中只能有一个return 语句,例如: def test_return(x): if x > 0: return x e