Python中的Function
Python中,函数是可被重用的程序段。对于函数的定义,可以使用def关键字。下面就先定义一个函数:
def foo():
print('function')
foo()
在上述代码中,定义了一个名为foo的函数,这个函数没有参数。最后一行代码的功能是调用这个函数。这是一个函数的最简单形式。下面来介绍一下有参数的函数:
def foo():
print('function')
def foo1(a,b):
print(a+b)
foo()
foo1(1,2)
foo1就是一个有参数的函数,使用foo1(1,2)就可以调用这个有参的函数了。
在程序中,有变量存在,就会涉及到变量的作用域的问题。在Python中,变量的作用域分三个等级:global、local和nonlocal。
global:顾名思义,表示全局变量。即这个变量在python中处于最高层次上,也就是这个变量的定义层次最高,而不是在函数或类中。
local:局部变量,被定义在函数之中。
nonlocal:这是一个相对的概念。在python中,函数内部可以嵌套定义内部函数,这样函数内部的变量相对于函数内部的内嵌函数来讲就是nonlocal的。
下面,给出相关的程序来说明,首先看一下全局和局部变量:
x = 1
y = 2
def foo(x):
print(x)
print(y)
print('***********')
x = 3
global y
y = 3
print(x)
print(y)
print('***********')
foo(x)
print(x)
print(y)
#************************
#运行结果
1
2
***********
3
3
***********
1
3
在上述程序中,定义了两个全局变量x和y, 在函数foo内部,也定义了一个局部变量x。根据运行结果可知,在foo内部,变量x是真正的局部变量。因为对其所做的修改并没有对全局变量x产生影响。另外,如果在foo内部需要使用全局变量,则需要使用global关键字。global y的意图就是声明变量y为外部声明过的全局变量y。所以,在foo内部对y进行修改后,在foo外部仍然有影响。因为foo修改的是全局变量。
再来看一下nonlocal:
def out():
z = 3
def inner():
nonlocal z
z = 4
print('inner function
相关文档:
找了半天没找着,终于在英文站点上找到,还有感谢群里的石头和球迷
>>> s = datetime.datetime(2009,1,1)
>>> time.mktime(s.timetuple())
1230739200.0
别外付一个python对时间的一些函数,很好用的
我们先导入必须用到的一个module
>>> import time
设置一个时间的格式,下面会用到
& ......
使用 Python 分离中文与英文的混合字串
LiYanrui
posted @ 大约 1 年前
in 程序设计
with tags
python
, 614 阅读
这个问题是做 MkIV 预处理程序
时搞定的,就是把一个混合了中英文混合字串分离为英文与中文的子字串,譬如,将 ”我的 English 学的不好
&ld ......
from http://stackoverflow.com/questions/101268/hidden-features-of-python
http://www.okpython.com/bbs/thread-3434-1-1.html
http://www.okpython.com/bbs/thread-3436-1-2.html
http://www.okpython.com/bbs/thread-3437-1-2.html
http://www.okpython.com/bbs/thread-3438-1-1.html
http://www.okpython.com/bb ......
每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。这在一个场合特别有用
——就如前面所提到的,当一个模块被第一次输入的时候,这个模块的主块将被运行。
每个Python模块都有它的__name__,如果它是'__main__',这说明这个模块被用户单独运行,
我们可以进行相应的恰当操作。
#!/usr/bin/pytho ......