1. 模块的导入方式:在py中,每个.py的文件就是一个模块。
1.1 方法一:import 模块1,模块2 as 别名 : #注意:在导入每个模块(或.py文件名)时,推荐每个导入单独占据一行。别名要符合大驼峰命名法。
import test1.py,test2.py as test #导入test1.py和test2.py文件
1.2 方法二:from 模块1 import 类/函数/全局变量/* as 别名: 从模块中导入部分方法功能等,导入全部用*(但是不推荐,可能和其他模块函数/功能名重复冲突)。注意如果从不同模块导入相同功能/函数名,后导入的会覆盖前导入的 ,所以可以通过别名避免。
from test.py import test #从test.py模块中导入部分函数test()
from test.py import * #从test.py模块中导入所有
test() #直接调用导入的函数
注意:函数、全局变量、功能模块名不能和当前的.py文件名重复,导入时会冲突报错,也避免和系统的模块文件(如random.py重名)。print(模块1.__file__)可以打印出当前模块1的相对路径。
1.3. __name__属性:测试模块的代码只在测试情况下被执行,在被引入模块情况不会执行。
2. 包:即包含多个模块的特殊目录,且必须有一个特殊的模块__init__.py,需要在这里文件from .(这个'.'表示从当前目录下引入其他模块) import 其他多个模块名(如from . impory send_msg),然后import 包名 ,可以导入包下所有模块(import msg),最后包名.模块名.功能函数名()就可以调用了(如 msg.send_msg.send())。
包目录结构:如
package #包文件夹
__init__.py #且必须有一个特殊的模块
#__init__.py文件
from . import send_msg #.表示当前目录
from . import get_msg
send_msg.py
#send_msg.py文件
def send(text):
print("发送%s信息"% text)
get_msg.py
#get_msg.py文件
def get(text):
print("获取%s信息"% text)
包的导入使用:
#其他文件导入包
import package
package.send_msg.send('包的发送信息')
package.get_msg.get('包的接收信息')
3.制作发布压缩包:即将个人的模块包压缩分享给他人。
拓展:
使用pip,这个包管理工具:对包进行安装,卸载。
步骤:1. 下载pip。
2. 在需要安装包的文件夹的命令行中,window下执行pip install 包名(或者 pip.exe install 包名)。
4. 文件:长期存储设备的一段数据。操作文件的三步骤:打开(open)文件、读/写(read/write)文件、关闭(close)文件。文本文件(包括文字、图片、视频等文件),即二进制文件,是以二进制的方式保存在磁盘上。为了避免文件占用空间,文件读写完,一定需要关闭。
4.1 打开文件:
file=open('文件名','打开方式'='r') #打开方式,包括'r','w','a','r+','w+','a+',默认为'r'只读,
文件打开方式 | 说明 |
r | open(文件名,'r')。只读方式打开,文件指针在开头,默认打开方式,若文件不存在,则抛出异常。 |
w | open(文件名,'w')。只写方式打开,若文件不存在,则创建新文件,若文件存在,则覆盖原文件内容。 |
a | open(文件名,'a')。写入方式打开,若文件不存在,则创建新文件,如文件存在,则在文件末尾写入内容。 |
r+ | open(文件名,'r+')。读写方式打开,文件指针在开头,若文件不存在,则抛出异常。 |
w+ | open(文件名,'w+')。读写方式打开,若文件不存在,则创建新文件,若文件存在,则覆盖原文件内容。 |
a+ | open(文件名,'a+')。读写方式打开,若文件不存在,则创建新文件,如文件存在,则在文件末尾写入内容。 |
4.2 读写文件:
text= file.read() #读取文件所有内容,如果文件比较大,耗内存。且文件读取完后,文件指针停留在文件末尾,无法再次读取到文件内容。
len(test) #读取到的文件内容长度。
while True:
text1= file.readline() #逐行读取文件内容,比较节约内存
if not text1:
break
print(text1)
4.3 关闭文件:
file.close() #关闭文件,读写文件完成之后,一定要关闭文件,避免占内存。
5.文件夹/目录的常用管理操作:
5.1 导入os模块:os模块用来操作文件的创建,重命名,删除,查看,改变路径.............。
import os
5.2 文件操作:文件的重命名和删除。
os.rename('源文件名.txt','重命名.txt') #文件重命名:参数分别是,原文件名和重新命名后的文件名。
os.remove('源文件名.txt') #删除文件:参数是路径下要删除的文件名。
5.3 目录操作:
6.文本编码: