模块
通俗的说模块就把一个已经写好的带有可使用的函数的文件,通过文件名进行导入,然后调用里面的函数等来完成所需功能,模块封装了你需要实现功能的代码,使用者只需调用即可,简化代码量,缩短编程时间。
time模块
实例
import time import datatime print("start to sleep...")
##time.sleep时间等待5秒
time.sleep(5) print("wake up ....")print(time.time()) #时间戳 从1970年1月1号开始到现在一共过去了多少秒 print(time.ctiem()) #输出当前系统时间 print(time.ctime(time.time()-86640)) #将时间戳转为字符串格式
print(time.gmtime(time.time()-86640)) #输出结果time.struct_time(tm_year=2017, tm_mon=8, tm_mday=7, tm_hour=7, tm_min=32, tm_sec=49, tm_wday=0, tm_yday=219, tm_isdst=0)
time_obj=time.gmtime(time.time()-86640) print(time_obj) #根据上面的输出内容进行格式化输出
print(str(time_obj.tm_year) + "-" + str(time_obj.tm_mon) + "-" + str(time_obj.tm_mday)) #结果 2017-8-7 #加上str是因为他们原来是整型的
#用字符串格式化输出
print("%s-%s-%s"%(time_obj.tm_year,time_obj.tm_mon,time_obj.tm_mday) #结果为 2017-8-7 格林威治时间 time.locatime(time.time()-86640)#本地时间(本机时间)
time.strftime("%Y-%m=%d %H:%M:%S",time.localtime()) #格式化输出时间可以将time.localtime替换为其他时间
#strftime将给定对象转成给定格式
time.strptime("2016/05/22","%Y/%m/%d")
#将 日期字符串 转成 struct时间对象格式
#就是上面那个反过来
#表明时间格式转换成struct时间格式
timedata模块
print(datetime.date.today()) #输出格式2016-01-26 print(datetime.date.fromtimestamp(timetime()-86400)) #2016-01-26 将时间戳转换为日期格式 current_time = datetime.datetime.now() print(current_time) #输出2017-08-08 20:33:12.870346 print(current_time.timetuple) #返回struct_time格式 print(current_time.replace())#输出现在时间 print(current_time.replace(1996,5,20))#输出给定时间
print(datetime.datetime.now() )#当前时间print(datetime.datetime.now() + datetime.timedelta(3)) #当前时间+3天print(datetime.datetime.now() + datetime.timedelta(-3)) #当前时间-3天print(datetime.datetime.now() + datetime.timedelta(hours=3)) #当前时间+3小时print(datetime.datetime.now() + datetime.timedelta(minutes=30)) #当前时间+30
sys模块
import sys print(sys.argv) #在Terminal中输入python 脚本名.py 加参数
if sys.argv[1] == "120" :#假如第一个参数为 120 就输出 gg
print("gg") #否则输出....
else : print("....")
print(sys.path)#输出模块存放目录 sys.exit(n)
退出程序,正常退出时exit(0)
choice = input("quit?") if choice == "y" or choice == "Y":
sys.exit("bye")
sys.version
获取Python解释程序的版本信息
sys.platform
返回操作系统平台名称
pip.exe
安装模块,详情190
sys.stdout.write("please:")
不换行输出
abc = sys.stdin.read() #对输入的字符输入到abc中,可多行
sys.stdin.red()
>>> cmd = sys.stdin.read() aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa >>> print(cmd) Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyboardInterrupt >>> print(cmd) aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa >>>
abc = sys.stdin.readline() #只能一行
1 sys.argv 命令行参数List,第一个元素是程序本身路径2 sys.exit(n) 退出程序,正常退出时exit(0)3 sys.version 获取Python解释程序的版本信息4 sys.maxint 最大的Int值5 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值6 sys.platform 返回操作系统平台名称7 sys.stdin 输入相关8 sys.stdout 输出相关9 sys.stderror 错误相关
OS模块
1 os.getcwd() 2 获取当前工作目录,即当前python脚本工作的目录路径 3 4 os.chdir("dirname")
5 改变当前脚本工作目录;相当于shell下cd 6 7 os.curdir
8 返回当前目录: ('.') 9 10 os.pardir
11 获取当前目录的父目录字符串名:('..')12 13 os.makedirs('dirname1/dirname2')
14 可生成多层递归目录15 16 os.removedirs('dirname1')
17 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推18 19 os.mkdir('dirname')
20 生成单级目录;相当于shell中mkdir(建立一个新的子目录) dirname(目录名)21 22 os.rmdir('dirname')
23 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir(删除目录) dirname24 25 os.listdir('dirname')
26 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印27 28 os.remove()
29 删除一个文件30 31 os.rename("oldname","newname")
32 重命名文件/目录33 34 os.stat('path/filename')
35 获取文件/目录信息36 37 os.sep
38 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"39 40 os.linesep
41 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"42 43 os.pathsep
44 输出用于分割文件路径的字符串45 46 os.name
47 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'48 49 os.system("bash command")
50 运行shell命令,直接显示51 52 os.environ
53 获取系统环境变量54 55 os.path.abspath(path)
56 返回path规范化的绝对路径57 58 os.path.split(path)
59 将path分割成目录和文件名二元组返回60 61 os.path.dirname(目录名)(path)
62 返回path的目录。其实就是os.path.split(path)的第一个元素63 64 os.path.basename(path)
65 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素66 67 os.path.exists(path)
68 如果path存在,返回True;如果path不存在,返回False69 70 os.path.isabs(path)
71 如果path是绝对路径,返回True72 73 os.path.isfile(path)
74 如果path是一个存在的文件,返回True。否则返回False75 76 os.path.isdir(path)
77 如果path是一个存在的目录,则返回True。否则返回False78 79 os.path.join(path1[, path2[, ...]])
80 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略81 82 os.path.getatime(path)
83 返回path所指向的文件或者目录的最后存取时间84 85 os.path.getmtime(path)
86 返回path所指向的文件或者目录的最后修改时间
实例解析
利用模块创建目录文件
import os def fff(path): if os.path.isdir(path): print("目录已经存在") else :
os.mkdir(path) print("创建成功")
a = input("请输入文件名,不能输入特殊字符")
fff(a)
进度条
版本一
import time import sys
a=0 while a !=100: for i in range(20):
a += 5
sys.stdout.write("%d%%|"%(a)) for k in range(i):
sys.stdout.write("#")
sys.stdout.flush()
time.sleep(0.5)
sys.stdout.write("\r")#清空本行字符版本二
for i in range(21):
sys.stdout.write("\r") #这里的int(i/20*100)*"*"意思是输出多少个"*"
sys.stdout.write("%s%% |%s"%(int(i/20*100),int(i/20*100)*"*"))
sys.stdout.flush()
time.sleep(0.5)

随时随地看视频