os模块
# -*- coding:utf-8 -*-
import os
print(os.getcwd()) # 查看当前所在路径
print(os.listdir(os.getcwd())) # 查看当前路径下的所有文件,返回的是列表类型
print(os.path.abspath('.')) # 返回path的绝对路径
print(os.path.abspath('..')) # 返回上一层路径的绝对路径
print(os.path.split(os.getcwd())) # 将路径分解为(目录绝对路径,文件夹)
print(os.path.split('D:\\pythontest\\ostest\\Hello.py')) # --->('D:\\pythontest\\ostest', 'Hello.py')
print(os.path.split('D:\\pythontest\\ostest\\')) # --->('D:\\pythontest\\ostest', '')
print(os.path.split('D:\\pythontest\\ostest')) # ---->('D:\\pythontest', 'ostest')
print(os.path.join('D:\\pythontest', 'ostest')) # --->D:\pythontest\ostest
print(os.path.join('D:\\pythontest\\ostest', 'hello.py')) # --->D:\pythontest\ostest\hello.py
print(os.path.join('D:\\pythontest\\b', 'D:\\pythontest\\a')) # -->D:\pythontest\a
print(os.path.dirname(os.getcwd())) # 返回path中的文件夹部分,结果不包含'\',只返回目录
print(os.path.basename(os.getcwd())) # 只返回文件名
print(os.path.getsize(os.getcwd())) # 返回文件或者文件夹大小
print(os.path.exists('D:\\pythontest\\ostest\\hello.py')) # 判断路径是否存在
print(os.path.isfile(os.getcwd())) # 判断是否为文件,并且存在
print(os.path.isdir("F:\\daliy")) # 判断是否为目录,并且存在
print(os.path.isfile('D:\\pythontest\\ostest\\hello.py')) # 判断是否为文件,并且存在
print(os.remove('D:\\pythontest\\ostest\\hello.py')) # 删除文件
print(os.stat('D:\\pythontest\\ostest\\hello.py')) # 获取文件属性
print(os.mkdir("F:\\test.py")) # 创建文件
print(os.remove("F:\\test.py")) # 删除文件
print(os.rmdir("F\\")) # 删除目录
os.environ.update({"__COMPAT_LAYER": "RUnAsInvoker"}) # 增加管理员权限打开
os.system("taskkill /f /im " + 'process_name') # 杀死进程
os.path.normpath()和os.path.json()的区别
1.有的系统自己会在路径上加上斜杠,就形成了2个或者更多斜杠的状况。最好在路径前加个字母r,所有问题统统解决。
2.字母r 不好用,尤其是用多平台开发和部署时会有问题,我说的那个函数,再配合 os.path.abspath(’.’)
然后再拼接是最好的
os.path.normpath("%s%s" % (“dirName1”, “dirName2”))
这个的最大好处是,会按你当前运行系统的“/”或"" 来提花 你"%s%s" % (“dirName1”, “dirName2”)这句里的那个“\”,你只管分隔,而不需要管在具体系统下会用什么目录分隔符
sys模块
1.sys.argv:命令行参数列表,第一个元素是脚本的名称,可以在执行整个程序前通过终端
传入参数,然后执行程序(sys模块是与python解析器交互接口)
2.sys.path:返回模块的搜索路径的列表,可以将写好的模块放在得到的某个路径下,就可以在程序中import时正确找到。
3.sys.exit(n):退出解析,n=0为正常退出
4.sys.stdin/sys.stdout:标准输入/标准输出。如果需要更好地控制输出,而print不能满足你的要求,可以使用它们。
os.path.isabs()用法:用于检查制定的路径是否为绝对路径
在Unix平台上,绝对路径以正斜杠(’/’)开头,而在Windows上,绝对路径在删除任何潜在的驱动器号后以反斜杠(’’)开始
用法: os.path.isabs(path)
参数:
path:代表文件系统路径的path-like对象。
path-like对象是表示路径的字符串或字节对象。
返回类型:此方法返回布尔型的布尔值。如果指定的路径是绝对路径,则此方法返回True,否则返回False。
代码1:用于os.path.isabs()方法(在Unix平台上)
# Python program to explain os.path.isabs() method
# importing os.path module
import os.path
# Path
path = '/home/User/Documents'
# Check whether the
# specified path is an
# absolute path or not
isabs = os.path.isabs(path)
print(isabs)
# Path
path = 'home/User/Documents/'
# Check whether the
# specified path is an
# absolute path or not
isabs = os.path.isabs(path)
print(isabs)
# Path
path = '../User/Documents/'
# Check whether the
# specified path is an
# absolute path or not
isabs = os.path.isabs(path)
print(isabs)
输出:
True
False
False
**代码2:**用于***os.path.isabs()***
方法(在Windows上)
# Python program to explain os.path.isabs() method
# importing os.path module
import os.path
# Path
path = r"C:\\Users\\Documents"
# Check whether the
# specified path is an
# absolute path or not
isabs = os.path.isabs(path)
print(isabs)
# Path
path = r"\\User\\Documents"
# Check whether the
# specified path is an
# absolute path or not
isabs = os.path.isabs(path)
print(isabs)
# Path
path = r"User\\Documents"
# Check whether the
# specified path is an
# absolute path or not
isabs = os.path.isabs(path)
print(isabs)
输出:
True
True
False