ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python os模块

2019-06-07 15:38:08  阅读:171  来源: 互联网

标签:python res py 模块 import print path os


python os模块中的30个API详解

 os 模块, 主要是对文件和系统相关的操作

1.  os.system(cmd)

在python 中执行系统 shell 命令

 2. os.popen(cmd, mode="r", buffering=-1)

执行系统 shell 命令, 返回的是一个对象, 要获取返回的内容, 要使用 read() 来获取
import os
print(os.system('ipconfig'))  # 查看windows ip 配置, (Linux: ifconfig)
res = os.popen("ipconfig").read()
print(res)

  

3.  os.listdir(path)

获取指定文件夹中所有文件和文件夹的名称的列表, 如果路径 path 不存在则报错

import os
try:
    res = os.listdir("./test.txt")
    print(res)
except:
    pass

 

4. os.chdir(path)

修改当前文件工作的默认路径

import os
os.chdir("/home/trent/mywork")

 

5. os.environ

获取或修改环境变量
import os
res = os.environ  # 获取, 返回的是一个字典
print(res)
os.environ['HOME'] = './'  # 修改

 

 6. os.name

获取系统标识, posix 的是 Linux 或者 mac, nt 的是 windows
import os
print(os.name)  # linux,mac(UNIX) : posix, windows : nt

 

 7. os.sep

获取路径分割符号, linux和mac: /, windows: \

8. os.linesep

获取系统的换行符号, linux和mac(UNIX)使用 '\n', windows使用 '\r\n'

import os
print(os.sep)
print(repr(os.linesep))

 

 9. os.path.abspath(path)

获取文件或者目录的绝对路径

import os.path
res = os.path.abspath("./test.py")
print(res)

 

10. os.path.basename(path)

获取一个路径中的文件名(包括后缀), 如果不存在文件名则返回空字符串

11. os.path.dirname(path)

获取一个路径中的文件夹的路径, 路径中是否含有文件名不影响返回的结果

import os.path
_path = '/mnt/hgfs/test.py'
res = os.path.basename(_path)
print(res)  # test.py
res = os.path.dirname(_path)
print(res)  # /mnt/hgfs

 

12. os.path.join(a, *p)

将多个(至少两个)路径或文件名组成新的路径, 可根据系统使用不同的斜杠

import os.path
p1 = 'home'
p2 = 'trent'
p3 = 'test.py'
res = os.path.join(p1, p2, p3)
print(res)  # home/trent/test.py  (linux)

 

13. os.path.split(path)

将一个路径拆分为文件名和文件夹路径, 即是 (os.path.dirname(path), os.path.basename(path)), 返回的是一个元组( Tuple )

 14. os.path.splitext(path)

将一个路径分割为后缀和剩余的其他部分, 如果不存在后缀, 则后缀部分为空字符串,  返回的是一个元组

import os.path
path = '/mnt/hgfs/test.py'
res = os.path.splitext(path)
print(res)  # ('/mnt/hgfs/test', '.py')
res = os.path.split(path)
print(res)  # ('/mnt/hgfs', 'test.py')

 

15. os.path.getsize(filename)

获取一个文件占用内存的大小

import os.path
filename = '/mnt/hgfs/test.py'
res = os.path.getsize(filename)
print(res)  # 512

 

16. os.path.getctime(filename)

获取[windows]文件的创建时间, [linux]权限的改动时间, 如果 filename 不存在则会报错, 否则返回时间戳. (getctime 中的 c:change)

17.os.path.getmtime(filename)

获取文件最后一次修改时间, 如果 filename 不存在则会报错, 否则返回时间戳. (getmtime 中的 m:modification)

18. os.path.getatime(filename)

 获取文件最后一次访问时间, 如果 filename 不存在则会报错, 否则返回时间戳. (getatime 中的 a:access)

import os.path
filename = '/mnt/hgfs/test.py'
res = os.path.getctime(filename)
print(res)
res = os.path.getmtime(filename)
print(res)
res = os.path.getatime(filename)
print(res)

 

19. os.path.exists(path)

查看一个路径是否存在, 如果存在返回 True, 否则返回 False

import os.path
path = '/mnt/hgfs/test.py'
res = os.path.exists(path)
print(res)

 

20. os.path.isdir(path)

查看一个路径是否是一个文件夹, 如果是返回 True, 否则返回 False

21. os.path.isfile(path)

 查看一个路径是否是一个文件, 如果是返回 True, 否则返回 False

22. os.path.islink(path)

 查看一个路径是否是一个链接, 如果是返回 True, 否则返回 False

23. os.path.isabc(path)

查看一个路径是否是一个绝对路径, 如果是返回 True, 否则返回 False

import os.path
path = '/mnt/hgfs/test.py'
res = os.path.isdir(path)
print(res)
res = os.path.isfile(path)
print(res)
res = os.path.islink(path)
print(res)
res = os.path.isabs(path)
print(res)

 

24. os.mknod(path)  创建文件  # 还有其他的默认参数, 一般用不到, 下同

25. os.mkdir(path)  创建文件夹

26. os.remove(path)  删除文件

27. os.mvdir(path)  删除文件夹

import os
os.mknod("./test2.py")
os.mkdir("./testdir")
os.remove("./test2.py")
os.rmdir("./testdir")

  

28. os.makedirs(name) 递归创建文件

29. os.removedir(name) 递归删除文件夹

import os
os.makedirs("./a/b/c/d")
os.removedirs("./a/b/c/d")

 

 30. os.rename(src, dst) 对文件或者文件夹重命名

import os
os.rename("./test.py", "./test2.py")

 

 

标签:python,res,py,模块,import,print,path,os
来源: https://www.cnblogs.com/trent-fzq/p/10988278.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有