22 python学习 模块介绍 sys os json pickle shelve XML re

模块就是PY文件 

导入时间是python底层c语言处理的内置模块Lib文件夹下没有,所以当同一个文件下有同名的time.py模块时候,并不会引用这个自定义模块,而是用系统所指定的原模块。

注意  

当引用的模块在其他的位置时候,这个是临时添加环境变量所在位置,只能在自己电脑上用啊,放在最上面  记得加r
import sys
sys.path.append(r"F:\BaiduYunDownload\第01阶段-基础必备篇 2,3 阶段在e盘\第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)\python全栈3期-课件与源码\day21源码\day21\day21_lesson")
# 当引用的模块在其他的位置时候,这个是临时添加环境变量所在位置,放在最上面  记得加r
# 写了个死路径只能在这个电脑运行
# import sys
# sys.path.append(r"F:\BaiduYunDownload\第01阶段-基础必备篇 2,3 阶段在e盘\第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)\python全栈3期-课件与源码\day21源码\day21\day21_lesson")

# 方法二 多是用此
import sys,os
if __name__=="__main__" :
    print(__file__)  #F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码/day22/__init__.py
                   #file拿到的是文件自己__init__.py  其他的那些绝对位置是pycharm给加上的  从而变成绝对路径
    print(os.path.dirname(__file__))
    BASE_DIR =print(os.path.dirname(os.path.dirname(__file__)))
    sys.path.append(BASE_DIR)       #**** 与上边的作用一样,并且也能在其他的电脑运行
    
# 从后往前找,找到要添加模块的那个文件夹,如果在下一层的话就用from ...import ...来解决
# F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码/day22/__init__.py
# F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码/day22
# F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码

# 当引用的模块在其他的位置时候,这个是  临时  添加环境变量所在位置,放在最上面  记得加r
# 写了个死路径只能在这个电脑运行
import sys
sys.path.append(r"F:\BaiduYunDownload\第01阶段-基础必备篇 2,3 阶段在e盘\第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)\python全栈3期-课件与源码\day21源码\day21\day21_lesson")

# 方法二 多是用此
import sys,os
if __name__=="__main__" :
    print(__file__)  #F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码/day22/__init__.py
   #******file拿到的是文件自己__init__.py  其他的那些绝对位置是pycharm给加上的  从而变成绝对路径,所以在cmd中是无法运行的,只能在pycharm中运行
    print(os.path.dirname(__file__))
    BASE_DIR =print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
    #***os.path.dirname找文件上一层目录,但是为了防止不是在pycharm运行导致__file__ 只是显示文件名字,而不是包括路径,所以最好用os.path.abspath(__file__)在pycharm或者终端都表示绝对路径
    sys.path.append(BASE_DIR)       #**** 与上边的作用一样,并且也能在其他的电脑运行

# 从后往前找,找到要添加模块的那个文件夹,如果在下一层的话就用from ...import ...来解决
# F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码/day22/__init__.py
# F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码/day22
# F:/BaiduYunDownload/第01阶段-基础必备篇 2,3 阶段在e盘/第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)/python全栈3期-课件与源码/day22源码

OS模块

import os

print(os.getcwd())
os.chdir("..")
print(os.getcwd())

os.makedirs('dirname1/dirname2')
os.removedirs("dirname1/dirname2")  #要从执行文件路径找到被删除的文件
print(os.listdir())
print(os.stat("sss.py"))

print(os.system("dir"))

print(os.path.split(r"C:\Users\Administrator\脱产三期\day22\sss.py"))
print(os.path.dirname(r"C:\Users\Administrator\脱产三期\day22\sss.py"))
print(os.path.basename(r"C:\Users\Administrator\脱产三期\day22\sss.py"))  #多用这个
a="C:\Users\Administrator"
b="脱产三期\day22\sss.py"

os.path.join(a,b)  路径拼接

os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname")   改变当前脚本工作目录;相当于shell下cd
os.curdir('.')  返回当前目录
os.pardir('..')获取当前目录的父目录字符串名
os.makedirs('dirname1/dirname2')     可生成多层递归目录 建立多级
os.removedirs('dirname1')     若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.removedirs("dirname1/dirname2")  要从执行文件路径找到被那个要删除的空文件
os.mkdir('dirname')    生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname')    删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname')    列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove()  删除一个文件
os.rename("oldname","newname")  重命名文件/目录
os.stat('path/filename')  获取文件/目录信息
print(os.stat("sss.py"))  #得到文件建立的时间,更改时间,查看时间 等
os.sep    输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep    输出当前平台使用的行终止符,一行终止的符号,win下为"\r\n",Linux下为"\n" #这里写错已修改
os.pathsep    输出用于分割文件路径的字符串 win下为; ,Linux下为 :
os.name    输出字符串指示当前使用平台。win->'nt'; Linux->'posix'   没用
os.system("bash command")  运行shell命令,直接显示            没啥用
os.environ  获取系统环境变量
os.path.abspath(path)   返回path规范化的绝对路径
os.path.split(path)   将path分割成目录路径 和文件名二元组返回
print(os.path.split(r"F:\BaiduYunDownload\第01阶段-基础必备篇 2,3 阶段在e盘\第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)\python全栈3期-课件与源码\day22源码\day22\xml_test.py")) # 把路径分成两部分
输出('F:\\BaiduYunDownload\\第01阶段-基础必备篇 2,3 阶段在e盘\\第01阶段-基础必备篇-1-Python开发视频-(Python3.5.2,2017年6月更新)\\python全栈3期-课件与源码\\day22源码\\day22', 'xml_test.py')

os.path.dirname(path)  返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path)  多用这个返回path最后的文件名。如果path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path)  如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path)  如果path是绝对路径,返回True
os.path.isfile(path)  如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path)  如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]])      重要的  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
a="C:\Users\Administrator"
b="脱产三期\day22\sss.py"
os.path.join(a,b)     #  路径拼接尽量用join 少用+

os.path.getatime(path)  返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path)  返回path所指向的文件或者目录的最后修改时间

SYS模块

05日22日,

猜你喜欢

转载自blog.csdn.net/yunyupianlan/article/details/81113559