• Python内置的操作系统模块(os)与解释器交互模块(sys)


              Python内置的操作系统模块(os)与解释器交互模块(sys)

                                            作者:尹正杰

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

       

        本片博客只介绍Python调用操作系统的模块即os模块,以及Python和解释器打交道的模块即sys模块。

     一.操作系统模块常用方法(os)

      1 #!/usr/bin/env python
      2 #_*_coding:utf-8_*_
      3 #@author :yinzhengjie
      4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
      5 #EMAIL:y1053419035@qq.com
      6 import os
      7 
      8 """
      9 os模块是与操作系统交互的一个接口。
     10 """
     11 
     12 filepath = r"E:Codepycharm文件存放处python学习笔记"
     13 
     14 print(os.getcwd())                                                           # 获取当前工作目录,即当前python脚本工作的目录路径
     15 
     16 print(os.chdir(filepath))                                                    #改变当前脚本工作目录;相当于shell下cd,记住,这个是没有返回值的哟
     17 
     18 print(os.curdir)                                                              #返回当前目录: ('.')
     19 
     20 print(os.pardir)                                                              #获取当前目录的父目录字符串名:('..')
     21 
     22 print(os.makedirs("E:Codepycharm文件存放处python学习笔记Day11"))   #可生成多层递归目录(创建目录,类十余),生产完毕后返回一个None值
     23 
     24 print(os.removedirs("E:Codepycharm文件存放处python学习笔记Day11")) #若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推(和上面的相反,就是删除目录。)
     25 
     26 print(os.mkdir("DAY11"))                                                     #生成单级目录;相当于shell中mkdir dirname,如果当前目录已经存在改目录就会报错
     27 
     28 print(os.rmdir("DAY11"))                                                      #删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname,如果当前目录没有改目录就会报错!
     29 
     30 print(os.listdir("E:Codepycharm文件存放处python学习笔记"))           #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
     31 
     32 
     33 # os.remove("yinzhengjie.txt")                                                #删除一个文件
     34 
     35 # os.rename("yinzhengjie.txt","yzj.txt")                                       #重命名文件/目录
     36 
     37 print(os.stat('E:Codepycharm文件存放处python学习笔记') )            #获取文件/目录信息
     38 
     39 print(os.sep)                                                                #输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
     40 
     41 print(os.linesep)                                                           #输出当前平台使用的行终止符,win下为"
    ",Linux下为"
    "
     42 
     43 print(os.pathsep)                                                           #输出用于分割文件路径的字符串
     44 
     45 print(os.name)                                                              #输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
     46 
     47 # print(os.system("dir"))                                                     #运行shell或者windows命令,直接显示命令的输出结果,可以将这个数据存放在一个变量中哟
     48 
     49 print(os.path.abspath("yinzhengjie.txt"))                                   #返回path规范化的绝对路径
     50 
     51 print(os.path.split(r"E:Codepycharm文件存放处python学习笔记"))      #将path分割成目录和文件名二元组返回
     52 
     53 print(os.path.dirname(r"E:Codepycharm文件存放处python学习笔记Day9yinzhengjie.txt"))   #返回path的目录。其实就是os.path.split(path)的第一个元素
     54 
     55 print(os.path.basename(r"E:Codepycharm文件存放处python学习笔记Day9yinzhengjie.txt"))     #返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素
     56 
     57 print(os.path.exists(r"E:Codepycharm文件存放处python学习笔记"))                            #如果path存在,返回True;如果path不存在,返回False
     58 
     59 print(os.path.isabs(r"D:pythondaimaDAY1user_info.txt"))                                       #如果path是绝对路径,返回True
     60 
     61 print(os.path.isfile(r"D:pythondaimaDAY1user_info.txt"))                                     #如果path是一个存在的文件,返回True。否则返回False
     62 
     63 print(os.path.isdir(r"E:Codepycharm文件存放处python学习笔记"))                               #如果path是一个存在的目录,则返回True。否则返回False
     64 
     65 print(os.path.join(r"E:Codepycharm文件存放处python学习笔记",r"Day9"))                   #将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
     66 
     67 print(os.path.getatime(r"E:Codepycharm文件存放处python学习笔记Day10"))                  #返回path所指向的文件或者目录的最后存取时间
     68 
     69 print(os.path.getmtime(r"E:Codepycharm文件存放处python学习笔记Day9"))                   #返回path所指向的文件或者目录的最后修改时间
     70 
     71 '''
     72 更多关于os模块的使用方法请参考:https://docs.python.org/2/library/os.html?highlight=os#module-os
     73 '''
     74 
     75 
     76 
     77 
     78 
     79 #以上代码执行结果如下:
     80 E:Codepycharm文件存放处python学习笔记Day9
     81 None
     82 .
     83 ..
     84 None
     85 None
     86 None
     87 None
     88 ['.idea', 'DAY1', 'Day10', 'DAY18', 'DAY2', 'DAY3', 'DAY4', 'DAY5', 'DAY6', 'DAY7', 'DAY8', 'Day9']
     89 os.stat_result(st_mode=16895, st_ino=562949953671936, st_dev=4210844879, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1520433760, st_mtime=1520433760, st_ctime=1518275451)
     90 
     91 
     92 
     93 ;
     94 nt
     95 E:Codepycharm文件存放处python学习笔记yinzhengjie.txt
     96 ('E:\Code\pycharm\文件存放处', 'python学习笔记')
     97 E:Codepycharm文件存放处python学习笔记Day9
     98 yinzhengjie.txt
     99 True
    100 True
    101 False
    102 True
    103 E:Codepycharm文件存放处python学习笔记Day9
    104 1520433678.5179508
    105 1520433643.7018182

     

    二.与Python解释器打交道的模块(sys)

     1 #!/usr/bin/env python
     2 #_*_coding:utf-8_*_
     3 #@author :yinzhengjie
     4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
     5 #EMAIL:y1053419035@qq.com
     6 
     7 import sys
     8 
     9 """
    10     sys模块是和Python解释器打交道的模块。
    11 """
    12 
    13 
    14 print(sys.version)              #获取Python解释程序的版本信息
    15 
    16 print(sys.platform)             #返回操作系统平台名称
    17 
    18 print(sys.path)                 #返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
    19 
    20 # print(sys.exit(100))            #退出程序,正常退出时exit(0),如果不写数字的话,默认就是0
    21 
    22 print(sys.argv[0])       #命令行参数List,第一个元素是程序本身路径
    23 
    24 print(sys.maxsize)              #显示当前系统最大的Int值
    25 
    26 '''
    27 更多使用方法请参考:https://docs.python.org/2/library/sys.html?highlight=sys#module-sys
    28 '''
    29 
    30 
    31 
    32 
    33 #以上代码执行结果如下:
    34 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 07:18:10) [MSC v.1900 32 bit (Intel)]
    35 win32
    36 ['E:\Code\pycharm\文件存放处\python学习笔记\Day11', 'E:\Code\pycharm\文件存放处\python学习笔记', 'E:\Code\pycharm\python\python3.6\python36.zip', 'E:\Code\pycharm\python\python3.6\DLLs', 'E:\Code\pycharm\python\python3.6\lib', 'E:\Code\pycharm\python\python3.6', 'C:\Users\Administrator\AppData\Roaming\Python\Python36\site-packages', 'E:\Code\pycharm\python\python3.6\lib\site-packages']
    37 E:/Code/pycharm/文件存放处/python学习笔记/Day11/1.sys模块.py
    38 2147483647
  • 相关阅读:
    javaweb基础笔记(2)
    javaweb基础笔记(1)
    java基础笔记(11)
    java基础笔记(10)
    java基础笔记(9)
    洛谷 P2648 赚钱
    AcWing 走廊泼水节 题解
    对于有向图多个点到一个点的求法
    分层图的四倍经验
    洛谷 P4822 [BJWC2012]冻结
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/8525890.html
Copyright © 2020-2023  润新知