Python 4 —— 函数与模块
函数和模块的使用
一、函数
一个例子说明一切。
def hello():
print "hello world" def increment(num):
num += 1
return num
默认参数
fun(,arg)是错误的,只能省略后面剩余的参数(按照声明的顺序)
可以使用None
def fun(x=None,y=None,z=None):
...
可变长参数
def fun(*arg):
...
使用函数作用域之外的变量,使用global声明
x=12; def fun():
global x
return x+12
二、模块
1、模块是对函数的进一步的封装, 可以看做一个Python文件
比如通过一个模块对许多数学函数进行了封装,例如为module.py
在另一个test.py中要对其引用,可以使用 import module,从而可以在test.py中调用module中的函数,比如
module.sin(x)
module.cos(x)
注意这里仍然需要使用模块名名称空间来引用其中声明的函数
2、模块的独立运行
每一个脚本在运行时都有一个__name__属性。
如果是作为模块被导入,那么是模块名;如果是独立运行则设置为__main__。我们可以通过这点来对模块设置独立的测试程序
##content of module
...
...
...
## test of the module
if __name__ == '__main__':
##content of test
三、模块包
举个例子

上图展示了一个使用模块的例子当中,文件的组织方式,缩进表示文件夹对文件夹,或者文件夹对问价的包含关系。
所谓模块实际上就是包含了许多python源文件的目录,例如上面的p1文件夹,为了显示表明他是一个python模块,在这个文件夹下添加一个__init__.py空文件,用于??????
这样当我们在test.py当中要引用这个模块当中的函数或者类的到时候,可以直接使用
from p1 import *
当我们在命令行下,敲入
python test.py
会发现在p1目录下多了一个文件,那是???.pyc, 那是字节码文件,类似于Java的编译方式,所以跨平台
# hi.py
# print hello world def hello():
print "hello world" def increment(num):
num += 1
return num class MyException(Exception):
def __init__(self, data):
self.data = data def __str__(self):
return self.data
# test.py from p1.hi import * hello() num = increment(1) print num try:
raise MyException, 'Error'
except MyException, data:
print data
else:
print 'ok'
Python 4 —— 函数与模块的更多相关文章
- python基础,函数,面向对象,模块练习
---恢复内容开始--- python基础,函数,面向对象,模块练习 1,简述python中基本数据类型中表示False的数据有哪些? # [] {} () None 0 2,位和字节的关系? # ...
- 零基础学python之函数与模块(附详细的代码和安装发布文件过程)
代码重用——函数与模块 摘要:构建函数,创建模块,安装发布文件,安装pytest和PEP 8插件,确认PEP8兼容性以及纠错 重用代码是构建一个可维护系统的关键. 代码组是Python中对块的叫法. ...
- 零基础Python教程-函数及模块的使用
函数 在学习本节内容之前,我们先来一起做道数学题. 已知:半径分别为0.1.0.2.0.3的三个圆,分别求这三个圆的面积. 很多读者可能要笑一下,这不是小学的数学问题吗? S = π * r * r ...
- Python中函数和模块的体验与使用
函数基础 目标 函数的快速体验 函数的基本使用 函数的参数 函数的返回值 函数的嵌套调用 在模块中定义函数 01. 函数的快速体验 1.1 快速体验 所谓函数,就是把 具有独立功能的代码块 组织为一个 ...
- python常用函数及模块
原文来源于博客园和CSDN 1.计算函数 abs()--取绝对值 max()--取序列最大值,包括列表.元组 min()--取序列最小值 len()--取长度 divmod(a,b)---取a//b除 ...
- Python学习笔记(2)——Python的函数、模块、包和库
Table of Contents 1. 函数. 2. 模块. 3. 包(package) 4. 库(library) 初识Python,对于没有接触过编程的我,恐怕只能听懂什么是函数,这里介绍一下几 ...
- python封装函数到模块
导入整个模块: import 模块名 导入特定函数: from module_name import function_name 通过逗号可以分割函数名,如果需要导入多个则 from a import ...
- 【Python】控制流语句、函数、模块、数据结构
1.三种控制流语句:if\for\while 2.每句后都要加冒号 3.有elif语句=else后加一个if 注意使用变量名! 注意缩进! 注意控制流语句后面要加冒号! 4.for i in rang ...
- Python学习笔记总结(二)函数和模块
一.函数 函数的作用:可以计算出一个返回值,最大化代码重用,最小化代码冗余,流程的分解. 1.函数相关的语句和表达式 语句 例子 Calls myfunc(‘diege', ...
随机推荐
- avi文件打开出现花屏、打开不了问题
以avi为后缀名文件,其编码格式并不是单一的,而是多种格式都可以以avi作为后缀. AVI(Audio Video Interleaved的缩写)是一种RIFF(Resource Interchang ...
- ssh config host
Host mygithub HostName github.com User git IdentityFile ~/.ssh/github/id_rsa IdentitiesOnly yes
- Function类型
1.每个函数都是Function类型的,和其他引用类型一样都具有属性和方法.函数也是对象,因此函数实际上是一个指向函数对象的指针. 函数声明语法定义: 方法1: function sum(num1,n ...
- 枚举全排列(包括数列中有重复数)的C语言实现
据说是用了DFS的思想--然鹅并不知道这是DFS. 主要就是选取一个数放到数组相应位置上,然后递归的排列剩下的数组,将剩下的数组递归排列完了之后再把数放回去,然后这一层递归就返回了-- 有重复数的话遇 ...
- 安装好grunt,cmd 提示"grunt不是内部或外部命令" 怎么办?
Grunt和所有grunt插件都是基于nodejs来运行的,因此,必须安装node.js. (一) 去官网http://nodejs.org/ 下载安装包 node-v6.9.2.msi,直接点击安装 ...
- easyui 下拉树改造
<select id="cc" style="width: 250px"></select> <div id="sp&q ...
- ABP mapto 映射
obj1.MapTo(obj2); obj1=>obj2: 在obj1实体里添加映射 [AutoMap(typeof(obj2))] public class obj1 { }
- python-->基础-->005-->类的三大成员:方法+属性+字段
---恢复内容开始--- 一.方法 python的方法中分为三种方法: 静态方法 动态方法(普通方法) 类方法 其中常用的方法为:静态方法和动态方法 class MyClass: def __init ...
- 在c#中IO流读写操作
1.使用FileStream读写文件 文件头: using System;using System.Collections.Generic;using System.Text;using System ...
- JavaScript语法结构
一:字符集 1.区分大小写 JavaScript是区分大小写的语言 所有的标识符(identifier)都必须采取一致的大小写形式 但是Html并不区分大小写(尽管Xhtml区分) 2.空格.换行符和 ...