Python学习笔记之模块

目录


模块

定义

用来从逻辑上组织python代码 实现一个功能,本质是以.py结尾的python文件

导入模块

  • import module_name #导入一个模块
  • import module_name1,module_name2 #导入多个个模块
  • form module import * #导入模块中所有属性 函数
  • form module import m1,m2,m3 #导入模块中所有多个方法

- form module import logger as logger_alex #导入模块中的方法并用as关键字重新命名

import 模块本质

把导入的模块解释执行一遍 赋值给一个变量,通过模块名调用

form module import fun

把指定模块拷贝当前文件执行 直接调用不用带模块名

定义:本质就是一个文件夹(自带有一个init.py文件)

导入包

  • import package_name

import 包本质

就是执行该包下的init.py文件

不同模快调用

import os
import sys

relactive_path=__file__  #相对路径
absolute_path=os.path.abspath(__file__)  #绝对路径
dir1=os.path.dirname(absolute_path)           #返回当前文件所在目录
PATH=os.path.dirname(dir1)          #返回当前文件所在目录的上级目录
print(dir1)
print(PATH)

#以上等于下面这句话
# PATH=os.path.dirname(os.path.dirname(os.path.abspath(__file__) ))
sys.path.append(PATH)     #添加项目的环境变量 ,也就ATM的目录
from core import main     #import core 包里面的mian文件
main.login()              #调用main模块里面的login函数

模块分类

  • 标准库
  • 开源模块
  • 自定义模块

模块使用

时间模块(time 和 datetime)

时间格式

  • 格式化时间:
2018-4-23
  • 时间戳时间
1524488576
  • 元组时间(struct_time)
time.struct_time(tm_year=2018, tm_mon=4, tm_mday=23, tm_hour=21, tm_min=44, tm_sec=8, tm_wday=0, tm_yday=113, tm_isdst=0)

time 模块

获取当前时间戳时间
time.time()
获取UTC元组时间 (传入时间戳返回元组UTC时间,默认当前时间戳)
time.gmtime()
获取UTC+8(北京时间)时间 (传入时间戳返回元组UTC+8时间,默认当前时间戳)
time.localtime()
元组时间转换成时间戳时间
time.mktime(time.localtime())
元组时间转换成格式化时间 ,传入元组,返回格式化时间 2018-04-23 21:55:15
time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
格式化时间转换成元组时间 ,传入格式化时间,传入格式化时间,返回元组时间 time.struct_time(tm_year=2018, tm_mon=4, tm_mday=23, tm_hour=21, tm_min=56, tm_sec=40, tm_wday=0, tm_yday=113, tm_isdst=-1)
time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
传入元组时间 转换成 固定格式:Mon Apr 23 22:18:56 2018
time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
传入时间戳时间 转换成 固定格式:Mon Apr 23 22:18:56 2018
time.ctime()
传入元组 转换成 固定格式:Mon Apr 23 22:18:56 2018

print(time.asctime())

传入时间戳 转换成 固定格式:Mon Apr 23 22:18:56 2018 (默认当前时间戳)

print(time.ctime())

datetime 模块

获取当前时间
datetime.datetime.now() #2018-04-23 22:32:49.663629
获取当前时间+3天
datetime.datetime.now()+datetime.timedelta(3) #2018-04-26 22:32:49.663629
获取当前时间-3天
datetime.datetime.now()+datetime.timedelta(-3) #2018-04-20 22:32:49.663629

random模块

生成 0-1浮点数(不包括1)随机数

random.randint(random.random())

指定随机范围int 随机数 包括第二个参数

random.randint(1,10)

指定随机范围float 随机数 包括第二个参数

(random.uniform(1,10)

指定随机范围随机数 不包括第二个参数

random.randrange(1,3)

取随机序列对象,字符串,列表,元组等

random.choice('domain')

取指定个数随机序列对象,字符串,列表,元组等

random.sample('domain',2) #['o', 'i']

打乱序列对象

random.shuffle(range(10)) 

示例(随机验证码)

import  random
matchCode=''
for i in range(4):
    temp=''
    if random.randint(0,2)==random.randint(0,2):
        temp=chr(random.randint(65,90))
    else:
        temp = random.randint(0,9)
    matchCode=matchCode+str(temp)
print(matchCode)

os模块

获取当前路径

print(os.getcwd()) #F:\PyWorkSpace\day5

改变当前路径

os.chdir(r"c:\users") #c:\users

获取当前路径属性 返回.

os.curdir

获取当前父集路径 返回.。

os.pardir

依次添加添加文件夹

os.makedirs(r"e:\Users\111\222")

依次删除文件夹 ,为空则删除,否则不删除

os.remove(r"e:\Users\111")

单个添加添加文件夹

os.mkdir(r"e:\Users\aaa)

单个删除文件夹 ,为空则删除,否则不删除

os.rmdir(r"e:\Users\aaa\bbb)

返回指定目录 list

os.listdir(".")  #当前目录
os.listdir("c:") #指定c盘目录

移除文件

os.remove(r"C:\Users\sunlo\Desktop\mainActivity.txt")

重命名文件

os.rename("oldName","newName")

获取文件信息

os.stat("path/fileName")

获取当前系统文件分隔符

os.sep

获取当前系统换行符

```
### 获取当前系统环境变量分隔符

os.pathsep

### 获取当前系统名字

os.name

### 调用当前系统命令

os.system()

### 获取当前系统环境变量

os.environ

### 获取当前文件绝对路径

os.path.abspath(file)

### 分割成路径和文件 为一个元组

os.path.split()

### 取字符串里面的路径

os.path.dirname(r’c:\a\b)

### 取取字符串里面文件

os.path.basename()

### 判断文件是否存在

os.path.exists()

### 判断文件是否为绝对路径

os.path.isabs()

### 判断是否为文件夹

os.path.isdir()

### 判断是否为文件

os.path.isfile()

### 拼接路径和文件

os.path.join()

### 获取文件创建时间

os.path.getatime()

### 获取文件修改时间

os.path.getmtime()


## sys模块
## shutil模块
高级的 文件、文件夹、压缩包 处理模块
## json & pickle 模块
用于序列化的两个模块

json,用于字符串 和 python数据类型间进行转换
pickle,用于python特有的类型 和 python的数据类型间进行转换
Json模块提供了四个功能:dumps、dump、load、loads、
pickle模块提供了四个功能:dumps、dump、loads、load
## shelve 模块
shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式
## xml处理模块
处理XML格式数据

import xml.etree.ElementTree as ET
“`

ConfigParser模块

用于生成和修改常见配置文档

hashlib & hmac 模块

用于加密相关的操作,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法

Subprocess模块

logging模块

re模块 

更多最新Python教程资源扫描下方二维码关注微信公众号 凯撒网络研究院,回复 Python获取。

image

猜你喜欢

转载自blog.csdn.net/qq_24045059/article/details/80033269