zoukankan      html  css  js  c++  java
  • Python os

    os模块 对操作系统进行操作的模块,是与操作系统交互的一个接口

     1 >>> import os
     2 >>> os.getcwd()                        # 获取当前工作目录,即当前python脚本工作的目录路径
     3 'D:\Program Files\Python\Python36'
     4 >>> os.chdir('D:Program Files')       # 改变当前脚本工作目录;相当于shell下cd
     5 >>> os.getcwd()
     6 'D:\Program Files'
     7 >>> os.curdir                          # 返回当前目录: ('.')
     8 '.'
     9 >>> os.pardir                          # 获取当前目录的父目录字符串名:('..')
    10 '..'
    11 >>>
    1 >>> import os
    2 >>> os.getcwd()
    3 'D:\Program Files\Python\Python36'
    4 >>> os.chdir(os.pardir)                  # 切换到当前目录的上一级目录
    5 >>> os.getcwd()
    6 'D:\Program Files\Python'
    7 >>> 

    os.path 模块主要用于获取文件的属性。

    以下是 os.path 模块的几种常用方法:

    方法说明
    os.path.abspath(path)                                返回绝对路径
    os.path.basename(path) 返回文件名
    os.path.commonprefix(list) 返回list(多个路径)中,所有path共有的最长的路径
    os.path.dirname(path) 返回文件路径
    os.path.exists(path) 路径存在则返回True,路径损坏返回False
    os.path.lexists 路径存在则返回True,路径损坏也返回True
    os.path.expanduser(path) 把path中包含的"~"和"~user"转换成用户目录
    os.path.expandvars(path) 根据环境变量的值替换path中包含的"$name"和"${name}"
    os.path.getatime(path) 返回最近访问时间(浮点型秒数)
    os.path.getmtime(path) 返回最近文件修改时间
    os.path.getctime(path) 返回文件 path 创建时间
    os.path.getsize(path) 返回文件大小,如果文件不存在就返回错误
    os.path.isabs(path) 判断是否为绝对路径
    os.path.isfile(path) 判断路径是否为文件
    os.path.isdir(path) 判断路径是否为目录
    os.path.islink(path) 判断路径是否为链接
    os.path.ismount(path) 判断路径是否为挂载点
    os.path.join(path1[, path2[, ...]]) 把目录和文件名合成一个路径
    os.path.normcase(path) 转换path的大小写和斜杠
    os.path.normpath(path) 规范path字符串形式
    os.path.realpath(path) 返回path的真实路径
    os.path.relpath(path[, start]) 从start开始计算相对路径
    os.path.samefile(path1, path2) 判断目录或文件是否相同
    os.path.sameopenfile(fp1, fp2) 判断fp1和fp2是否指向同一文件
    os.path.samestat(stat1, stat2) 判断stat tuple stat1和stat2是否指向同一个文件
    os.path.split(path) 把路径分割成 dirname 和 basename,返回一个元组
    os.path.splitdrive(path) 一般用在 windows 下,返回驱动器名和路径组成的元组
    os.path.splitext(path) 分割路径,返回路径名和文件扩展名的元组
    os.path.splitunc(path) 把路径分割为加载点与文件
    os.path.walk(path, visit, arg)

    遍历path,进入每个目录都调用visit函数,

    visit函数必须有3个参数(arg, dirname, names),

    dirname表示当前目录的目录名,

    names代表当前目录下的所有文件名,args则为walk的第三个参数

    os.path.supports_unicode_filenames 设置是否支持unicode路径名

    实例

    以下实例演示了 os.path 相关方法的使用:

    实例

     1 >>> import os
     2 >>> os.path.basename('E:Python	extbookPython Cookbook.pdf')  # 返回文件名
     3 'Python Cookbook.pdf'
     4 >>> os.path.dirname('E:Python	extbookPython Cookbook.pdf')   # 返回目录路径
     5 'E:\Python	extbook'
     6 >>> 
     7 >>> os.path.split('E:Python	extbookPython Cookbook.pdf')     # 分割文件名与路径
     8 ('E:\Python	extbook', 'Python Cookbook.pdf')                  
     9 >>> os.path.join('Python', 'textbook', 'log')                   # 将目录和文件名合成一个路径
    10 'Python\textbook\log' 11 >>>

    实例

     1 >>> import os
     2 >>> import time
     3 >>> file = 'E:\Python\book\HD\requests.pdf'
     4 >>> os.path.getatime(file)  # 输出最近访问时间
     5 1540801655.5823293
     6 >>> os.path.getctime(file)  # 输出文件创建时间
     7 1540801643.3139277
     8 >>> os.path.getmtime(file)  # 输出最近修改时间
     9 1540802049.866292
    10 >>> os.path.getsize(file)
    11 13668975
    12 >>> time.gmtime(os.path.getmtime(file)) # 以struct_time形式输出最近修改时间
    13 time.struct_time(tm_year=2018, tm_mon=10, tm_mday=29, tm_hour=8, tm_min=34, tm_sec=9, tm_wday=0, tm_yday=302, tm_isdst=0)
    14 >>> os.path.abspath('./Python27')       # 输出绝对路径
    15 'D:\Program Files\Python\Python36\Python27'
    16 >>>
  • 相关阅读:
    LeetCode 252. Meeting Rooms
    LeetCode 161. One Edit Distance
    LeetCode 156. Binary Tree Upside Down
    LeetCode 173. Binary Search Tree Iterator
    LeetCode 285. Inorder Successor in BST
    LeetCode 305. Number of Islands II
    LeetCode 272. Closest Binary Search Tree Value II
    LeetCode 270. Closest Binary Search Tree Value
    LeetCode 329. Longest Increasing Path in a Matrix
    LintCode Subtree
  • 原文地址:https://www.cnblogs.com/51try-again/p/10251972.html
Copyright © 2011-2022 走看看