Python基础笔记系列十:模块
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!!
- 模块
#1.类比于java中的jar包,模块能让你能够有逻辑地组织你的Python代码段。
#2.把相关的代码分配到一个模块里能让你的代码个更好用,更易懂。
#3.模块也是Python对象,具有随机的名字属性用来绑定或引用。
#4.简单来说,模块就是一个保存了Python代码的文件。模块能自定义函数,类和变量。模块里也能包含可执行的代码。 - 模块引入
python提供了很多第三方的模块可以引入,python标准安装包里的模块称为标准库。模块的引入主要有以下三种:
①引入模块import moduleName
②引入模块下的函数
from moduleName import function1 , function2 ,...
③引入模块的所有函数
from moduleName import *
其中第一种引入模块的方式在使用模块时需要带上模块名(moduleName.methodName),如math.sqrt();
引入模块后就可以使用模块里的方法了。
例子:计算25的平方根import math
r = math.sqrt(25)
print r如果模块或者函数名字过长可以在import后使用as给该模块取个假名,之后可以通过“假名.函数”来使用模块里的函数。
例子:import webbrowser as myweb
myweb.open_new_tab("http://www.cnblogs.com/hyyq/") 使用自定义模块
任何Python程序hello.py(无主函数)都可以作为一个模块被另外一个Python程序test.py引入使用。
例子:
hello.py :#incoding:utf-8
def hello():
print 'import this module!'
def bokeyuan():
print 'http://www.cnblogs.com/hyyq/'test.py :
#incoding:utf-8
import hello #文件名作为模块名,不需要后缀.py哦~
hello.hello()
hello.bokeyuan()输出:
import this module!
http://www.cnblogs.com/hyyq/以上引入模块的程序和模块程序需要在同一目录下,局限性很大。如果想让模块可以被任何文件引用,可以调用os.path.append(模块文件所在目录)添加模块所在目录到系统里去。
例子:假设文件结构~/|模块 #文件夹模块
—————|test.py #调用‘hello’模块的程序文件
—————|hello #hello文件夹
———————|hello.py #模块文件
———————|hello.pyc #模块字节码文件test.py:
#incoding:utf-8
import sys
sys.path.append('./hello') #当前目录下的hello文件夹
import hello #文件名作为模块名,不需要后缀.py哦~
hello.hello()
hello.bokeyuan()这种将文件目录加入系统里这种方式也有局限性,并且用起来也很麻烦。一般地,通用的告知python解释器到哪儿去找模块文件的方法有三:
①PYTHONPATH环境变量里增加模块文件路径
②.pth文件,文件里列出所有模块文件所在路径(放在python安装目录下即可)
③模块打包(推荐)
Python基础笔记系列十:模块的更多相关文章
- Python基础笔记系列十二:requests模块的简单应用
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! httpbin httpbin这个网站能测试 HTTP 请求和响应的各种信 ...
- Python基础笔记系列十四:python无缝调用c程序
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! python语言可以对c程序代码进行调用,以弥补python语言低性能的缺 ...
- Python基础笔记系列十一:标准输入输出、文件读写和指针等操作
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 标准输入输出一.输入 在sublime中这个时候需要安装SublimeRE ...
- Python基础笔记系列一:基本工具与表达式
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 工具基础(Windows系统下)传送门:Python基础笔记系列四:工具的 ...
- Python基础笔记系列十三:socket网络编程
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!!使用python编写一个简易的服务端程序和客户端程序,启动服务端和客户端(监 ...
- Python基础笔记系列九:变量、自定义函数以及局部变量和全局变量
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 变量在前面的系列中也许就可以发现,python中的变量和C中的变量有些许不 ...
- Python基础笔记系列四:工具的安装与配置
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 一开始是没有打算写工具这篇的,后来发现在某些情况下会遇到一些奇怪的问题,这 ...
- Python基础笔记系列八:字符串的运算和相关函数
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字符串的运算1.字符串的加法和乘法 python中不但支持字符串相加,还支 ...
- Python基础笔记系列七:字符串定义和访问
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字符串定义和访问 1.字符串基础 a.字符串可以用单引号.双引号.三引号( ...
随机推荐
- 系统架构--分布式计算系统spark学习(三)
通过搭建和运行example,我们初步认识了spark. 大概是这么一个流程 ------------------------------ -------------- ...
- Python高级教程-多重继承
多重继承 继承是面向对象编程的一个重要的方式,因为通过继承,子类可以扩展父类的功能. Animal类的层次设计,假设要实现以下4中动物: Dog - 狗狗: Bat - 蝙蝠: Parrot - 鹦鹉 ...
- Linux中的yum的配置以及常见报错的处理
一. 今天登录服务器的时候,误把yum所在的cache文件夹中的文件删除掉了,导致yum不能够使用,解决的方法: 显示错误如下: Loaded plugins: fastestmirror Deter ...
- SpringBoot简介及第一个应用
一.Spring时代变换 1. Spring1.x 时代 Spring初代都是通过xml文件配置bean,随着项目的不断扩大,繁琐的xml配置,混乱的依赖关系,难用的bean装配方式,由此衍生了spr ...
- 20165324 实验二《Java面向对象程序设计》实验报告
20165324 实验二<Java面向对象程序设计>实验报告 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:何春江 学号:20165324 指导教师:娄嘉鹏 实验日期: ...
- 国内NLP的那些人那些会
统计学和语言学专家都列在一起了,没有区分.1,黄昌宁,1937年生于广东,1955年考入清华大学电机系,1961年毕业并留校任教至博士生导师, 1983-1984年赴美国耶鲁大学进修,1986-198 ...
- json & pickle数据序列化
序列化:把内存中的数据对象变成字符串 info = { 'name':'tom', 'age':22 } f = open("test.txt","w") f. ...
- sqlserver 2005/2008 导入超大sql文件
SQLCMD -E -dmaster -ic:\Scripts\create_db.sql 安装了Microsoft® SQL Server® 2008 R2 Native Client可用
- 利用google api生成二维码名片
利用google api生成二维码名片 二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码.堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成:矩阵式二维条码以矩阵的形式组成,在矩 ...
- exec-maven-plugin配置及使用
背景: 如果你想在项maven生命周期内,运行一段java代码,或者一段独立的程序,或者说我们所指的预执行,初始化某些值,生成某些不能预先生成的文件.那么这样我们就可以使用exec-maven-plu ...