#1、常用的模块 os,sys,time,datetime,hashlib
#2、如何导入其他目录下的模块
#3、操作数据库
OS模块
import os #os.chmod("x.py",2)#给文件/目录加权限,对windows的下面不好使,只能liunx #1 执行 #2 写 #4 读 # print(os.chdir("../day5"))#更改当前目录 # print(os.getcwd())#获取当前路径地址 # print(os.makedirs("nhy/python"))#递归创建文件夹,如果父目录不存在会自动帮你创建父目录 # print(os.mkdir("nhy/huangrong"))#创建文件夹,父目录不存在会报错 #os.remove("nhy/huangrong/123.txt")#只能删除文件 # os.rmdir("nhy/python")#只能删除文件夹 # print(os.listdir('e:\'))#列出一个目录下的所有文件 #print(os.listdir(r'e:DSXlxday6 hy'))#列出一个目录下的所有文件 #os.rename('nhy','xiaorui') #重命名 #os.rename('444.txt','xiaorui/huangrong/555.txt') # print(os.stat("xiaorui/huangrong/555.txt"))#获取文件信息 1 # # # print(os.sep)#当前操作系统的路径分隔符 #
自动根据当前操作系统显示路径分隔符
拼路径
day5+os.sep+x.py
#print(os.linesep)#当前操作系统的换行符 1 # linux是 windows下是 #print(os.environ)#当前系统的环境变量 #print(os.pathsep)#当前系统的环境变量中每个路径的分隔符 #print(os.name)当前系统名称 Windows系统都是nt linux都是posix #res = os.system('ipconfig') #执行操作系统命令的,但是获取不到结果 #res = os.popen('ipconfig').read() #可以获取到命令执行的结果 # __file__ #获取到当前文件的绝对路径
#print(os.path.abspath(__file__))#获取当前文件的绝对路径
#print(os.path.abspath('.'))#获取绝对路径
#print(os.path.split('xiaorui/huangrong/666.txt'))#分割路径和文件名 # print(os.path.dirname("e:\huangrong\555.txt"))#获取父目录,获取它的上一级目录 # print(os.path.basename("e:\huangrong\555.txt"))#获取最后一级,如果是文件显示文件名,如果是目录显示目录名 # print(os.path.exists(r"E:DSXLXday6xiaoruihuangrong555.txt"))#目录/文件是否存在 # print(os.path.isabs("../day6"))#判断是否是绝对路径 False # print(os.path.isabs(r"E:DSXLXday6xiaoruihuangrong555.txt"))#判断是否是绝对路径 True # print(os.path.isfile("mk.py")) # #判断是否是一个文件,1、文件要存在2、必须是一个文件 # print(os.path.isdir("e:\DSX"))#是否是一个路径,目录是否存在 # size = os.path.getsize('mk.py') #获取文件的大小 #不能超过2m # print(size) # print(os.path.join("root",'hehe','mysql','a.sql'))#拼接成一个路径 # # os.rmdir('xiaorui/huangrong') # # for abs_path,dir,file in os.walk(r'E:DSXLXday6'): #获取目录下内容 os.listdir() # print(abs_path,dir,file) #abs_path 当前循环的绝对路径 #dir 目录下面所有的文件夹 [ ] #file 目录下面的所有文件 []
sys模块
#import sys # print(sys.platform) #判断操作系统 # #python的环境变量 # sys.path.append(r'E:syzly-codeday5') # sys.path.insert(0,r'E:syzly-codeday5')
sys.argv #用来获取
sys.argv方法
导入一个模块的实质就是把python文件执行一次
datetime模块
import datetime d=datetime.datetime.now()#取当前时间,格式是时分秒 d=datetime.datetime(2018,4,20)#取2018年4月20号,格式是时分秒 d2=d.strftime('%Y-%m-%d')#把取到的时间格式转换成2018-04-20
today = datetime.date(y,m,d)#指定日期
today=datetime.date.today()#当前日期
import datetime
print(datetime.datetime.today())#获取当天时间,精确到秒
print(datetime.date.today())#精确到天
res=datetime.date.today()+datetime.timedelta(minutes=5)#获取到5天后的日期,如果是-5是获取到5天前的日期
print(res.strftime('%Y-%m-%d:%H:%M:%S'))
#timedelta获取到几天前或几天后的
# datetime.timedelta(days=5)
# datetime.timedelta(minutes=5)
# datetime.timedelta(seconds=5)
# datetime.timedelta(weeks=5)
from nhy import my,name my() #可以直接调用my print(name) import nhy nhy.my() print(nhy.name) from nhy import * #导入所有的 #不要这么用,用哪个方法后面就跟那个,用*的话看不出来方法是从哪个导入的,不易读
TIME模块
#时间模块 # import time # t=time.time()#获取时间戳 # print(t) # # time.sleep(10) # today=time.strftime('%Y-%m-%d %H:%M:%S')#获取格式化好的时间 # print(today) # print(time.gmtime())#默认取的是标准时区的时间 # print(time.localtime(1550559940))#默认取的是当前时间区的时间 取到时间元组 # #把时间戳转换成格式化好的元组 # s=time.localtime(1550559940) # # date=time.strftime('%Y-%m-%d %H:%M:%S',s) # print(date)
hashlib
#加密
import hashlib m=hashlib.md5() passed='jcyf124' passdd=passed.encode()#把字符串转换成btye类型的,否则无法加密,会报错 m.update(passdd) print(m.hexdigest())
加密函数: hashlib
def my_md5(str): import hashlib new_str=str.encode()#把字符串转成bytes类型 #nes_str=b'%s%str #把字符串转成bytes类型 m=hashlib.md5()#实例化m5对象 m.update(new_str)#加密 return m.hexdigest() #获取返回结果 print(my_md5('jcyf1234'))