当前位置:编程学习 > 网站相关 >>

Python模块及函数的使用

一.
1.模块是包含函数和其他语句的脚本文件,以".py"为后缀名,在Python中可以通过导入模块来使用模块中的函数或数据.
创建一个文件fun.py内容如下:
[python]
def f1(): 
    print('hello world!') 
def f2(L): 
    result = 0  
    for i in L: 
        result += i 
    return result 
def f3(x): 
    print("old x = " + str(x)) 
    x = 0  
    print("change to x = " + str(x)) 
value=100  
再创建另一个文件shang.py,再在这个文件调用fun.py中的函数
[python] view plaincopy
#!/usr/bin/env python 
 
import fun                  //引入模块 
from fun import f1,f2,f3    //引入模块中的函数 
 
fun.f1()                    //与下一个区别,用这个必须先用import引入模块 
f1() 
print f2([1,2,3,4,5]) 
f3(20)  
print fun.value             //打印引入模块的变量值 
结果如下 
hello world!
15
old x = 20
change to x = 0
注:引入fun.py过程中会自动生成fun.pyc文件并且上述两个文件在同一目录.
2.设置模块查找路径2.
上一例子是在同一目录
若不在同一目录,python查找不到,必须进行查找路径的设置,将模块所在的文件夹加入系统查找路径
查看默认查找路径:
import sys
sys.path
 
添加一个路径[将当前路径加入]
import os
import sys
sys.path.append(os.getcwd())


二.函数参数
1.函数中的参数传递:
[python]
>>> def sum(a=1,b=2,c=3): 
...     return a+b+c 
...  
>>> sum()           //不传使用默认参数 

>>> sum(4,5,6)      //顺序传递参数 
15 
>>> sum(b=4,c=12,a=1)       //按参数名传递 
17 
>>>  
2.可变长的参数
[python] 
>>> def listappend( *l ): 
...     result = [] 
...     for i  in l: 
...             result.extend(i) 
...     return result 
...  
>>> l = [1,2,3,4,5] 
>>> j = [4,5,6] 
>>> print (listappend(l,j)) 
[1, 2, 3, 4, 5, 4, 5, 6] 
>>> k = [1,2,3] 
>>> print (listappend(l,j,k)) 
[1, 2, 3, 4, 5, 4, 5, 6, 1, 2, 3] 

3.补充:lambda表达
特殊的声明函数方式,用于创建新的函数对象,并且在运行时返回它们【返回函数对象】
声明一个匿名函数,简单的函数,返回一个值
用于定义小型的函数,在函数中仅包含单一的参数表达式,而不能包含其他语句,但是可以调用其他函数
格式:lambda 参数列表:表达式
[python]
>>> def repeater(n): 
...     return lambda s:s*n 
...  
>>> twice = repeater(2) 
>>> print(twice('word')) 
wordword 
>>> print(twice(2)) 

>>> fun = lambda x:x*x -1 
>>> print(fun(2)) 

>>> print(fun(3)) 


 

补充:Web开发 , Python ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,