zoukankan      html  css  js  c++  java
  • python之模块 os

    # -*- coding: utf-8 -*-
    #python 27
    #xiaodeng
    #python之模块 os
    
    
    
    import os
    '''
    FUNCTIONS
        abort(...)#暂不了解
            abort() -> does not return!
            
            Abort the interpreter immediately.  This 'dumps core' or otherwise fails
            in the hardest way possible on the hosting operating system.
        
        access(...)#暂不了解
            access(path, mode) -> True if granted, False otherwise
            
            Use the real uid/gid to test for access to a path.  Note that most
            operations will use the effective uid/gid, therefore this routine can
            be used in a suid/sgid environment to test if the invoking user has the
            specified access to the path.  The mode argument can be F_OK to test
            existence, or the inclusive-OR of R_OK, W_OK, and X_OK.
        
        chdir(...)#改变当前工作目录,改变工作目录到dirname,相当于shell下cd
            chdir(path)
            
            Change the current working directory to the specified path.
        
        chmod(...)
            chmod(path, mode)
            
            Change the access permissions of a file.
        
        close(...)
            close(fd)
            
            Close a file descriptor (for low level IO).
        
        closerange(...)
            closerange(fd_low, fd_high)
            
            Closes all file descriptors in [fd_low, fd_high), ignoring errors.
        
        dup(...)
            dup(fd) -> fd2
            
            Return a duplicate of a file descriptor.
        
        dup2(...)
            dup2(old_fd, new_fd)
            
            Duplicate file descriptor.
        
        execl(file, *args)
            execl(file, *args)
            
            Execute the executable file with argument list args, replacing the
            current process.
        
        execle(file, *args)
            execle(file, *args, env)
            
            Execute the executable file with argument list args and
            environment env, replacing the current process.
        
        execlp(file, *args)
            execlp(file, *args)
            
            Execute the executable file (which is searched for along $PATH)
            with argument list args, replacing the current process.
        
        execlpe(file, *args)
            execlpe(file, *args, env)
            
            Execute the executable file (which is searched for along $PATH)
            with argument list args and environment env, replacing the current
            process.
        
        execv(...)
            execv(path, args)
            
            Execute an executable path with arguments, replacing current process.
            
                path: path of executable file
                args: tuple or list of strings
        
        execve(...)
            execve(path, args, env)
            
            Execute a path with arguments and environment, replacing current process.
            
                path: path of executable file
                args: tuple or list of arguments
                env: dictionary of strings mapping to strings
        
        execvp(file, args)
            execvp(file, args)
            
            Execute the executable file (which is searched for along $PATH)
            with argument list args, replacing the current process.
            args may be a list or tuple of strings.
        
        execvpe(file, args, env)
            execvpe(file, args, env)
            
            Execute the executable file (which is searched for along $PATH)
            with argument list args and environment env , replacing the
            current process.
            args may be a list or tuple of strings.
        
        fdopen(...)
            fdopen(fd [, mode='r' [, bufsize]]) -> file_object
            
            Return an open file object connected to a file descriptor.
        
        fstat(...)
            fstat(fd) -> stat result
            
            Like stat(), but for an open file descriptor.
        
        fsync(...)
            fsync(fildes)
            
            force write of file with filedescriptor to disk.
        
        getcwd(...)#获取当前目录
            getcwd() -> path
            
            Return a string representing the current working directory.
        
        getcwdu(...)
            getcwdu() -> path
            
            Return a unicode string representing the current working directory.
        
        getenv(key, default=None)
            Get an environment variable, return None if it doesn't exist.
            The optional second argument can specify an alternate default.
        
        getpid(...)
            getpid() -> pid
            
            Return the current process id
        
        isatty(...)
            isatty(fd) -> bool
            
            Return True if the file descriptor 'fd' is an open file descriptor
            connected to the slave end of a terminal.
        
        kill(...)
            kill(pid, sig)
            
            Kill a process with a signal.
        
        listdir(...)#获取目录内容,其结果为list类型
            listdir(path) -> list_of_strings
            
            Return a list containing the names of the entries in the directory.
            
                path: path of directory to list
            
            The list is in arbitrary order.  It does not include the special
            entries '.' and '..' even if they are present in the directory.
        
        lseek(...)
            lseek(fd, pos, how) -> newpos
            
            Set the current position of a file descriptor.
            Return the new cursor position in bytes, starting from the beginning.
        
        lstat(...)
            lstat(path) -> stat result
            
            Like stat(path), but do not follow symbolic links.
        
        makedirs(name, mode=511)#递归文件夹创建函数,
                                #os.makedirs('dirname1/dirname2') 可生成多层递归目录
            makedirs(path [, mode=0777])
            
            Super-mkdir; create a leaf directory and all intermediate ones.
            Works like mkdir, except that any intermediate path segment (not
            just the rightmost) will be created if it does not exist.  This is
            recursive.
        
        mkdir(...)#创建一个新的目录,目录已存在会报错,WindowsError: [Error 183] : '1'
            mkdir(path [, mode=0777])
            
            Create a directory.
        
        open(...)
            open(filename, flag [, mode=0777]) -> fd
            
            Open a file (for low level IO).
        
        pipe(...)
            pipe() -> (read_end, write_end)
            
            Create a pipe.
        
        popen(...)
            popen(command [, mode='r' [, bufsize]]) -> pipe
            
            Open a pipe to/from a command returning a file object.
        
        popen2(...)
        
        popen3(...)
        
        popen4(...)
        
        putenv(...)
            putenv(key, value)
            
            Change or add an environment variable.
        
        read(...)
            read(fd, buffersize) -> string
            
            Read a file descriptor.
        
        remove(...)#删除文件,参数可根绝对路径
            remove(path)
            
            Remove a file (same as unlink(path)).
        
        removedirs(name)#递归删除目录
            在os模块中使用removedirs方法时,要想把a目录和a目录下的b目录同时删除,代码os.removedirs(r'D:a'),只有符合以下条件时,a和b两个目录才会被同时删除。
                1)a目录下只有b目录
                2)b目录中必须是一个空目录
                两者缺一不可
            removedirs(path)
            
            Super-rmdir; remove a leaf directory and all empty intermediate
            ones.  Works like rmdir except that, if the leaf directory is
            successfully removed, directories corresponding to rightmost path
            segments will be pruned away until either the whole path is
            consumed or an error occurs.  Errors during this latter phase are
            ignored -- they generally mean that a directory was not empty.
        
        rename(...)#文件重命名
            rename(old, new)
            
            Rename a file or directory.
        
        renames(old, new)#递归重命名文件夹或者文件,暂不知道怎么使用
            renames(old, new)
            
            Super-rename; create directories as necessary and delete any left
            empty.  Works like rename, except creation of any intermediate
            directories needed to make the new pathname good is attempted
            first.  After the rename, directories corresponding to rightmost
            path segments of the old name will be pruned until either the
            whole path is consumed or a nonempty directory is found.
            
            Note: this function can fail with the new directory structure made
            if you lack permissions needed to unlink the leaf directory or
            file.
        
        rmdir(...)#删除空目录,如果目录非空报错,WindowsError: [Error 145] : '1'
            rmdir(path)
            
            Remove a directory.
        
        spawnl(mode, file, *args)
            spawnl(mode, file, *args) -> integer
            
            Execute file with arguments from args in a subprocess.
            If mode == P_NOWAIT return the pid of the process.
            If mode == P_WAIT return the process's exit code if it exits normally;
            otherwise return -SIG, where SIG is the signal that killed it.
        
        spawnle(mode, file, *args)
            spawnle(mode, file, *args, env) -> integer
            
            Execute file with arguments from args in a subprocess with the
            supplied environment.
            If mode == P_NOWAIT return the pid of the process.
            If mode == P_WAIT return the process's exit code if it exits normally;
            otherwise return -SIG, where SIG is the signal that killed it.
        
        spawnv(...)
            spawnv(mode, path, args)
            
            Execute the program 'path' in a new process.
            
                mode: mode of process creation
                path: path of executable file
                args: tuple or list of strings
        
        spawnve(...)
            spawnve(mode, path, args, env)
            
            Execute the program 'path' in a new process.
            
                mode: mode of process creation
                path: path of executable file
                args: tuple or list of arguments
                env: dictionary of strings mapping to strings
        
        startfile(...)
            startfile(filepath [, operation]) - Start a file with its associated
            application.
            
            When "operation" is not specified or "open", this acts like
            double-clicking the file in Explorer, or giving the file name as an
            argument to the DOS "start" command: the file is opened with whatever
            application (if any) its extension is associated.
            When another "operation" is given, it specifies what should be done with
            the file.  A typical operation is "print".
            
            startfile returns as soon as the associated application is launched.
            There is no option to wait for the application to close, and no way
            to retrieve the application's exit status.
            
            The filepath is relative to the current directory.  If you want to use
            an absolute path, make sure the first character is not a slash ("/");
            the underlying Win32 ShellExecute function doesn't work if it is.
        
        stat(...)
                 #os.stat('path/filename') 获取文件/目录信息
            stat(path) -> stat result
            
            Perform a stat system call on the given path.
        
        stat_float_times(...)
            stat_float_times([newval]) -> oldval
            
            Determine whether os.[lf]stat represents time stamps as float objects.
            If newval is True, future calls to stat() return floats, if it is False,
            future calls return ints. 
            If newval is omitted, return the current setting.
        
        strerror(...)
            strerror(code) -> string
            
            Translate an error code to a message string.
        
        system(...)#运行shell命令
            #os.system('cmd') #启动dos
            #启动cmd命令符
            Execute the command (a string) in a subshell.
        
        tempnam(...)
            tempnam([dir[, prefix]]) -> string
            
            Return a unique name for a temporary file.
            The directory and a prefix may be specified as strings; they may be omitted
            or None if not needed.
        
        times(...)
            times() -> (utime, stime, cutime, cstime, elapsed_time)
            
            Return a tuple of floating point numbers indicating process times.
        
        tmpfile(...)
            tmpfile() -> file object
            
            Create a temporary file with no directory entries.
        
        tmpnam(...)
            tmpnam() -> string
            
            Return a unique name for a temporary file.
        
        umask(...)
            umask(new_mask) -> old_mask
            
            Set the current numeric umask and return the previous umask.
        
        unlink(...)
            unlink(path)
            
            Remove a file (same as remove(path)).
        
        urandom(...)
            urandom(n) -> str
            
            Return n random bytes suitable for cryptographic use.
        
        utime(...)
            utime(path, (atime, mtime))
            utime(path, None)
            
            Set the access and modified time of the file to the given values.  If the
            second form is used, set the access and modified times to the current time.
        
        waitpid(...)
            waitpid(pid, options) -> (pid, status << 8)
            
            Wait for completion of a given process.  options is ignored on Windows.
        
        walk(top, topdown=True, onerror=None, followlinks=False)#目录遍历
            Directory tree generator.
            
            For each directory in the directory tree rooted at top (including top
            itself, but excluding '.' and '..'), yields a 3-tuple
            WindowsError: [Error 183] : '1'
                dirpath, dirnames, filenames
            
            
            Example:
            
            import os
            from os.path import join, getsize
            for root, dirs, files in os.walk('python/Lib/email'):
                print root, "consumes",
                print sum([getsize(join(root, name)) for name in files]),
                print "bytes in", len(files), "non-directory files"
                if 'CVS' in dirs:
                    dirs.remove('CVS')  # don't visit CVS directories
        
        write(...)
            write(fd, string) -> byteswritten
            
            Write a string to a file descriptor.
    
    
    DATA:
        os.name#输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix
        os.linesep字符串给出当前平台使用的行终止符 '
    '            #Windows使用'
    ',Linux使用'
    '而Mac使用'
    '。
        os.curdir 返回当前目录: ('.')
        os.pardir 获取当前目录的父目录字符串名:('..')
        os.environ 获取系统环境变量
        
    >>> 
    '''
  • 相关阅读:
    DFS的联通性问题
    Stl-unordered_map 无序关联式容器的基本用法(xmind)
    【图论】匈牙利算法——社会人数规模专家
    AcWing 860. 染色法判定二分图
    AcWing 1227. 分巧克力(二分)
    【图论】【最小生成树】prim【AcWing】局域网&&繁忙的都市
    【图论】拓扑排序
    Stl—bitset用法
    vector< vector<int> > 的初始化
    Floyd——人人都是中间商(50%)
  • 原文地址:https://www.cnblogs.com/dengyg200891/p/4986236.html
Copyright © 2011-2022 走看看