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', ...
随机推荐
- Magento1.9批量修改产品 Attribute Set
今天修改产品时遇到这样一个需求:重新设置产品的 Attribute Set,使用的是Magento1.9系统,Magento提供这样一个插件 Flagbit Change Attribute Set: ...
- button点击ajax异步无效的处理办法,以及实现“关注”“已关注”切换
button并不是在只等于submit时草有提交功能,如果你用它触发ajax事件,你的ajax会失去他最大的优势:刷新局部数据! 但是你如果设置了他的return false;属性小伙伴你的ajax才 ...
- VScode常用几个前端插件live HTML previewer和debugger for chrome的配置
之前一直都是用sublime Text和chrome配合来写前端的页面,自从知道了有liveReload这个神奇的插件之后感觉爽翻了啊.好吧跑远了........ 话说最近微软搞了个VScode,听说 ...
- 初步涉及JDBC
一.为什么要使用JDBC: 1.在之前的学习中,我们都是通过控制台来输入信息,创建对象,然后再输出信息,但是这样无法保存数据,每次程序运行都需要重新输入,很麻烦. 2. 在这样的情况下,我们就需要利用 ...
- JS之模块模式应用
之前做过一些简单的单页面应用项目,是对模块模式很好的应用,我决定动手做一个简单的Demo出来. 基本思想是设计一个加载器,当用户点击菜单时,获取不同选项的按钮id,根据不同id实现对页面内容的替换. ...
- linux操作系统-memcache安装
安装配置 1. 安装libevent # tar zxf libevent-1.4.6-stable.tar.gz # cd libevent-1.4.6-stable # ./configure # ...
- 我 && yii2 (路由优化)
今天配置了一下yii2 的路由,用 /index.php?r=... 这样的路由,实在是不太习惯,所以我便试着把yii2 的路由,写成laravel 那般,以下为详情 1.环境介绍 lnmp php5 ...
- sublimeText3安装emmet(For Mac)
每次重装st,安装emmet都困难重重,对上一次依照网上查的资料一步步做好了,这次又忘了如何操作,结果又是网上搜索打开一箩筐的网页. 终于决定,把这些惨痛的经历记录下来,要用的话自己看,也可能可以帮助 ...
- PHP array_multisort—对多个数组或多维数组进行排序
PHP中array_multisort可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序. 关联(string)键名保持不变,但数字键名会被重新索引. 输入数组被当成一个表的列并以 ...
- Windows cmd命令搜索顺序
一.在cmd中执行一个不带后缀的命令(不带路径),首先会在无后缀的系统命令(如cd.dir等)中搜索,如果找到了就执行该命令, (dir是无后缀的系统命令所以优先执行,无视当前目录中的dir.exe) ...