zoukankan      html  css  js  c++  java
  • Python OS模块

    一、os模块概述

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

    下面列出了一些在os模块中比较有用的部分。它们中的大多数都简单明了。

    os.sep 可以取代操作系统特定的路径分割符。
    os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。
    os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。
    os.getenv()和os.putenv()函数分别用来读取和设置环境变量。
    os.listdir()返回指定目录下的所有文件和目录名。
    os.remove()函数用来删除一个文件。
    os.system()函数用来运行shell命令。

    os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用' ',Linux使用' '而Mac使用' '。

    os.path.split()函数返回一个路径的目录名和文件名。

    os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

    os.path.existe()函数用来检验给出的路径是否真地存在

    os和os.path模块
    os.listdir(dirname):列出dirname下的目录和文件
    os.getcwd():获得当前工作目录
    os.curdir:返回但前目录('.')
    os.chdir(dirname):改变工作目录到dirname

    二、常用方法

    1、os.name

    输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix'。

    2、os.getcwd()

    函数得到当前工作目录,即当前Python脚本工作的目录路径。

    3、os.listdir()

    返回指定目录下的所有文件和目录名。

    >>> os.listdir(os.getcwd())
    ['Django', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'MySQL-python-wininst.log', 'NEWS.txt', 'PIL-wininst.log', 'python.exe', 'pythonw.exe', 'README.txt', 'RemoveMySQL-python.exe', 'RemovePIL.exe', 'Removesetuptools.exe', 'Scripts', 'setuptools-wininst.log', 'tcl', 'Tools', 'w9xpopen.exe']
    >>> 

    4、os.remove()

    删除一个文件。

    5、os.system()

    运行shell命令。

    >>> os.system('dir')
    0
    >>> os.system('cmd') #启动dos

    6、os.sep 可以取代操作系统特定的路径分割符。

    7、os.linesep字符串给出当前平台使用的行终止符

    >>> os.linesep
    '
    '            #Windows使用'
    ',Linux使用'
    '而Mac使用'
    '。
    >>> os.sep
    '\'              #Windows
    >>> 

    8、os.path.split()

    函数返回一个路径的目录名和文件名

    >>> os.path.split('C:\Python25\abc.txt')
    ('C:\Python25', 'abc.txt')

    9、os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

    >>> os.path.isdir(os.getcwd())
    True
    >>> os.path.isfile('a.txt')
    False

    10、os.path.exists()函数用来检验给出的路径是否真地存在

    >>> os.path.exists('C:\Python25\abc.txt')
    False
    >>> os.path.exists('C:\Python25')
    True
    >>> 

    11、os.path.abspath(name):获得绝对路径

    12、os.path.normpath(path):规范path字符串形式

    13、os.path.getsize(name):获得文件大小,如果name是目录返回0L

    14、os.path.splitext():分离文件名与扩展名

    >>> os.path.splitext('a.txt')
    ('a', '.txt')

    15、os.path.join(path,name):连接目录与文件名或目录

    >>> os.path.join('c:\Python','a.txt')
    'c:\Python\a.txt'
    >>> os.path.join('c:\Python','f1')
    'c:\Python\f1'
    >>> 

    16、os.path.basename(path):返回文件名

    >>> os.path.basename('a.txt')
    'a.txt'
    >>> os.path.basename('c:\Python\a.txt')
    'a.txt'
    >>> 

    17、os.path.dirname(path):返回文件路径

    >>> os.path.dirname('c:\Python\a.txt')
    'c:\Python'
  • 相关阅读:
    【PAT甲级】1043 Is It a Binary Search Tree (25 分)(判断是否为BST的先序遍历并输出后序遍历)
    Educational Codeforces Round 73 (Rated for Div. 2)F(线段树,扫描线)
    【PAT甲级】1042 Shuffling Machine (20 分)
    【PAT甲级】1041 Be Unique (20 分)(多重集)
    【PAT甲级】1040 Longest Symmetric String (25 分)(cin.getline(s,1007))
    【PAT甲级】1039 Course List for Student (25 分)(vector嵌套于map,段错误原因未知)
    Codeforces Round #588 (Div. 2)E(DFS,思维,__gcd,树)
    2017-3-9 SQL server 数据库
    2017-3-8 学生信息展示习题
    2017-3-5 C#基础 函数--递归
  • 原文地址:https://www.cnblogs.com/rusking/p/5099918.html
Copyright © 2011-2022 走看看