python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。以下列举常用的命令

1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回’posix'

os.name
--------------
'nt'

2. os.getcwd()——得到当前工作的目录。

os.getcwd()
'C:\\Python27'

3. os.listdir()——指定所有目录下所有的文件和目录名。例:

os.listdir(".")#获取当前路径
['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools', 'w9xpopen.exe']

os.listdir("E:\\appium scripts")#获取制定路径
['.idea', 'android_desktop.py', 'android_desktop.pyc', 'CalculatorAppium.py', 'ContactManager.apk', 'ContactManager_android_contacts.py', 'ContactManager_android_contacts.pyc', 'howdo.py', 'Offical.apk', 'Offical_android_complex.py', 'Offical_android_complex.pyc', 'Official android_simple.py', 'Official android_simple.pyc', 'selendroid-test-app.apk', 'try.py']
           

  以列表的形式全部列举出来,其中没有区分目录和文件。

4. os.remove()——删除指定文件

os.remove("C:\Users\paul\Desktop\IMG_0210.PNG")

5. os.rmdir()——删除指定目录

os.remove("C:\Users\paul\Desktop\test")

6. os.mkdir()——创建目录

os.mkdir("C:\Users\paul\Desktop\\test")

 注意:这样只能建立一层,要想递归建立可用:os.makedirs()

os.makedirs("C:\Users\paul\Desktop\\test\ust")

7. os.path.exists()——检验指定的对象是否存在。是True,否则False.例:

 os.path.exists("C:\\Users\\paul\\Desktop\\1.txt")

8. os.path.split()——返回路径的目录和文件名二元数组。例:

os.path.split("C:\\Users\\paul\\Desktop\\1.txt")
('C:\\Users\\paul\\Desktop', '1.txt')
os.path.split("C:\\Users\\paul\\Desktop\\")
('C:\\Users\\paul\\Desktop', '')

9. os.system()——执行shell命令。例:

os.system("cmd")

10. os.path.getsize()——获得文件的大小,如果为目录,返回0

 os.path.getsize("C:\\Users\\paul\\Desktop\\1.txt")

15. os.path.abspath()——获得绝对路径。例:

os.path.abspath(".")
------------------------------
'C:\\Python27'

16. os.path.join(path, name)——连接目录和文件名。例:

将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。

os.path.join('c:\\', 'csv', 'test.csv')
----------------------------------------
'c:\\csv\\test.csv'
>>> os.path.join('windows\temp', 'c:\\', 'csv', 'test.csv')
-----------------------------------------
'c:\\csv\\test.csv'
>>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c')
------------------------------------------------------------
'/home/aa/bb/c

17.os.path.basename(path)——返回文件名

os.path.basename("C:\\Users\\paul\\Desktop\\1.txt")
--------------------------------------------------------------
'1.txt'

18. os.path.dirname(path)——返回文件路径

 os.path.dirname("C:\\Users\\paul\\Desktop\\1.txt")
------------------------------------------------------
'C:\\Users\\paul\\Desktop'

 19.获取当前文件绝对目录路径,一般封装模块时用到,不受运行程序相对路径影响

os.path.dirname(__file__)

  

 20.规范path字符串形式

print  os.path.join(os.path.dirname(__file__), 'oui_%s.dict' % (fix))
>>>C:/Users/Administrator/Desktop/22\oui_2.dict
print os.path.normpath(os.path.join(os.path.dirname(__file__), 'oui_%s.dict' % (fix)))
>>>C:\Users\Administrator\Desktop\22\oui_2.dict

  

   

【python】os模块常用命令的更多相关文章

  1. python os模块 常用命令

    python编程时,经常和文件.目录打交道,这是就离不了os模块.os模块包含普遍的操作系统功能,与具体的平台无关.以下列举常用的命令 1. os.name()——判断现在正在实用的平台,Window ...

  2. python os模块常用命令

    python编程时,经常和文件.目录打交道,这是就离不了os模块.os模块包含普遍的操作系统功能,与具体的平台无关.以下列举常用的命令 1. os.name()——判断现在正在实用的平台,Window ...

  3. [转]python os模块 常用命令

    python编程时,经常和文件.目录打交道,这是就离不了os模块.os模块包含普遍的操作系统功能,与具体的平台无关.以下列举常用的命令 1. os.name()——判断现在正在实用的平台,Window ...

  4. Python OS模块常用功能 中文图文详解

    一.Python OS模块介绍 OS模块简单的来说它是一个Python的系统编程的操作模块,可以处理文件和目录这些我们日常手动需要做的操作. 可以查看OS模块的帮助文档: >>> i ...

  5. python文件操作及os模块常用命令

    1.文件打开 文件句柄 = open('文件路径', '模式') 2.文件操作 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 三种基本 ...

  6. Python OS模块常用函数说明

    Python的标准库中的os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的.即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Wi ...

  7. Python os模块常用部分功能

    os.sep 可以取代操作系统特定的路径分割符. os.name字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcw ...

  8. python os 模块常用操作

    python 2.7 os 常用操作 官方document链接 文件和目录 os.access(path, mode) 读写权限测试 应用: try: fp = open("myfile&q ...

  9. Python OS模块常用

    python 读写.创建 文件 第二个:目录操作-增删改查 第三个:判断 第四个:PATH 第四个:os.mknod 创建文件(不是目录) import os os.chdir("/&quo ...

随机推荐

  1. [LeetCode] 35. Search Insert Position ☆(丢失的数字)

    转载:https://leetcode.windliang.cc/leetCode-35-Search-Insert-Position.html    思路 Given a sorted array ...

  2. 如何用Curl 来post xml 数据

    因为登陆服务升级,密码策略变更,以前的测试脚本中的用户密码已经不能登陆,试图通过API直接更改密码,一种是直接update,一种是change,使用curl的时候均未成功. 最后索性重新用curl命令 ...

  3. 快速切题 acdream手速赛(6)A-C

    Sudoku Checker Time Limit: 2000/1000MS (Java/Others)Memory Limit: 128000/64000KB (Java/Others) Submi ...

  4. 工作中遇到的oracle分页查询问题及多表查询相关

    在工作中,有时,我们会用到oracle分页查询.这时,就需要先了解oracle的rownum.rowmun是oracle的伪列,只能用符号(<.<=.!=),而不能用这些符号(>,& ...

  5. [转载]struts1小项目

    http://www.blogjava.net/nokiaguy/archive/2009/01/13/251101.html

  6. 读书笔记 C# Lookup<TKey,TElement>和ToLookup方法的浅析

    Lookup<TKey,TElement>类型对象和分组是一样的,就好比使用Linq的group关键字后所查询出来的结果,使用foreach的时候,都可以用IGrouping<TKe ...

  7. Linux更改中国时区

    执行tzselect命令-->选择Asia-->选择China-->选择east China - Beijing, ->然后输入1 再执行 ln -sf /usr/share/ ...

  8. Redis学习第八课:Redis高级实用特性(一)

    Redis高级实用特性 注:我学习的环境是vmware7.1 + ubantu10.10+ redis 3.0.2 1.安全性 设置客户端连接后进行任何其他指定前需要的密码.因为redis速度相当快, ...

  9. Eclipse中SVN的安装步骤(两种)和使用方法

    Eclipse中SVN的安装步骤(两种)和使用方法 一.给Eclipse安装SVN,最常见的有两种方式:手动方式和使用安装向导方式.具体步骤如下: 方式一:手动安装 1.下载最新的Eclipse,我的 ...

  10. 什么叫做VC维

    参考<机器学习导论> 假设我们有一个数据集,包含N个点.这N个点可以用2N种方法标记为正例和负例.因此,N个数据点可以定义2N种不同的学习问题.如果对于这些问题中的任何一个,我们都能够找到 ...