Python3 模块
什么是模块?- 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py.模块可以被别的程序引入,以使用该模块中的函数等功能.这也是使用 python 标准库的方法.
使用模块
想使用 Python 源文件,只需在另一个源文件里执行 import 语句,语法如下:
- import 模块名
- 例如
- import os
一个模块只会被导入一次,不管你执行了多少次import.这样可以防止导入模块被一遍又一遍地执行.
显示与添加模块路径
import sys
print(sys.path) # 输出模块路径
#手动添加新的模块路径
sys.path.append(‘D:\python\test’)
下面是一个使用 python 标准库中模块的例子:
执行结果如下所示:
- import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。
- sys.argv 是一个包含命令行参数的列表。
- sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表。
from … import 语句
Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中,语法如下:from modname import name1[, name2[, … nameN]]
例如,要导入模块 fibo 的 fib 函数,使用如下语句:
这个声明不会把整个fibo模块导入到当前的命名空间中,它只会将fibo里的fib函数引入进来。
__name__属性
一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。
说明:每个模块都有一个__name__属性,当其值是__main__时,表明该模块自身在运行,否则是被引入。
__name__与 __main__底下是双下划线
sys模块常用方法
- sys.path # 查看以列表显示的搜索路径
- sys.version # 查看当前python版本
- sys.argv # 命令行参数List
- sys.exit(n) # 退出程序,正常退出时exit(0)
os模块常用方法
<1> os.system(“command”) # 运行系统命令,直接显示
<2>.os.environ #获取系统环境变量
<3>os.curdir 返回当前目录: (’.’)
<4>os.pardir 获取当前目录的父目录字符串名:(’…’)
<5>os.makedirs(‘dir1/dir2’) 可生成多层递归目录
os模块文件操作方法
os.remove() 删除一个文件
os.rename(“oldname”,“new”) 重命名文件/目录
os.stat(‘path/filename’) 获取文件/目录信息
os.sep 操作系统特定的路径分隔符,win下为"\",Linux下为"/"
os.linesep 当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep dir() 函数
dir() 函数
内置的函数 dir() 可以找到模块内定义的所有名称(变量名,函数名类名)。以一个字符串列表的形式返回:
print(dir(sys)) 显示模块中所有的函数名和变量名
print(help(sys)) 查看模块的帮助文档
print(sys.path) 模块位置,list类型可以修改
print(sys.version) 显示python解释器的版本
Python列表脚本操作符
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
如下所示:
Python列表函数&方法
Python包含以下函数:
Python包含以下方法:
list.append(obj) 在列表末尾添加新的对象
list.count(obj) 统计某个元素在列表中出现的次数
list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj) 从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj) 将对象插入列表
list.pop([index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj) 移除列表中某个值的第一个匹配项
list.reverse() 反向列表中元素
list.sort( key=None, reverse=False) 对原列表进行排序
list.clear() 清空列表
list.copy() 复制列表
列表推导式
[ 元素 for 元素 in 序列 if 条件 ]
is = [ i for i in range(10) if i %2 == 0 ] # 求10以内的偶数
#可以认为是下面代码的简写形式
lis1 = []
for i in range(10):
if i % 2 ==0:
lis1.append(i)