zoukankan      html  css  js  c++  java
  • Python 常用内建模块(os, sys,random)

    一、os 模块

    1,操作系统与环境变量

    import os
    print(os.name) #操作系统类型,如果是posix 说明系统是linux unix 或 mac os x ;如果是nt 就是windows 系统
    print(os.uname()) #获取详细的系统信息,uname()函数在Windows上不提供,也就是说,os模块的某些函数是跟操作系统相关
    print(os.environ) #在操作系统中定义的环境变量,全部保存在os.environ这个变量中,可以直接查看
    print(os.environ.get('PATH')) #要获取某个环境变量的值,可以调用os.environ.get('key')
    print(os.sep) # 当前操作系统的路径分隔符
    print(os.linesep) # 当前操作系统的换行符
    print(os.pathsep) # 当前系统的环境变量中每个路径的分隔符,linux是:,windows是;
    os.system('ipconfig') #用来执行操作系统命令,只能执行,获取不到结果
    res = os.popen('ipconfig') #用来执行操作系统命令,并且获取到返回结果.read
    print(res.read())
    print(os.popen('ipconfig').read())
    os.popen('top -n 1').read() #popen 无法执行top ping 等动态命令

    2,操作文件和目录

    注:操作文件和目录的函数一部分放在os模块中,一部分放在os.path模块中

     常用操作:

    print(os.getcwd())#取当前工作目录
    print(os.mkdir("test1")) # 创建文件夹
    print(os.remove("../day4/5.png")) # 删除文件,不能删文件夹。
    print(os.listdir('c://')) # 列出一个目录下的所有文件
    os.rename("test", "test1") # 重命名
    print(os.path.abspath(__file__)) # 获取绝对路径,能自动识别当前系统
    print(os.path.split("c:\usr\hehe\hehe.txt")) # 分割路径和文件名
    print(os.path.dirname("c:\usr\hehe\hehe.txt")) # 获取父目录
    print(os.path.exists("c://test2")) # 目录/文件是否存在
    print(os.path.isfile(r"E: xzday2.zip"))#判断是否是一个文件 ,r 转译特殊字符,当成普通字符对待(如 )
    print(os.path.isdir(r"E: xzday2"))#是否是一个文件夹
    name = 'a.sql'
    print(os.path.join("e",name))#拼接成一个路径,(自动识别当前系统的路径分隔符,实现跨平台)

    其他:
    print(os.chdir(".."))  # 更改当前目录
    print(os.getcwd())#取当前工作目录
    print(os.curdir) # 当前目录,相对路径
    print(os.pardir) # 父目录,相对路径
    print(os.rmdir("test1")) # 只能删除空文件夹
    print(os.stat("笔记.txt"))#获取文件信息
    print(__file__) #__file__就是这个文件的绝对路径
    print(os.path.basename("c:\usr\hehe\hehe.txt")) # 获取最后一级,如果是文件显示文件名,如果是目录显示目录名

    二、sys 模块
    import sys
    print(sys.path) #环境变量
    print(sys.platform) #看当前系统是什么
    print(sys.version)#看python的版本
    sys.path.insert(0,BASE_PATH) # 加入环境变量

    print(sys.exit('程序退出'))
    quit('程序退出') #退出程序
    print(sys.argv) #是获取运行python文件的时候 传入的参数
    sys.stdout.write('please:') #向屏幕输出一句话
    val = sys.stdin.readline()[:-1] #获取输入的值
    print(val)

    import sys
    args = sys.argv #运行sys.argv的方法:

    实例:
    #清理日志脚本
    import sys,os
    def clean_log(path):
    print('日志已经清理')
    args = sys.argv #运行sys.argv的方法:
    if len(args)>1:
    path = args[1]
    if os.path.isdir(path):
    clean_log(path)
    else:
    print('路径不存在!')
    else:
    print('运行这个python文件需要传入一个路径! '
    '运行示例: python clean_log.py /usr/tomcat/logs')

    三、random 模块
    import random ,string
    s = random.choice(['a','b','c','df'])#随机取一个元素
    s = random.choice()#随机取一个元素
    res = random.sample(string.digits,3) #随机取N个元素
    print(''.join(res))
    print(random.randint(1,199))#1-199随机取一个整数
    print(string.digits) #所有的数字0-9
    print(string.ascii_lowercase) #所有的小写字母
    print(string.ascii_uppercase) #所有的大写字母
    print(string.ascii_letters) #所有的小写字母+所有的大写字母
    print(string.punctuation) #所有的特殊字符
    print(string.ascii_letters+string.digits)#所有的数字和字母
    res = random.uniform(1,9)#随机取1-9之间的浮点数
    print(res)
    print(round(res,2))# 保留几位小数,如果四舍五入之后,最后一位小数是0,那么不显示
    print(random.random()) #取0-1之间随机小数
    s = ['a','b','c','d','e']
    random.shuffle(s) #洗牌,打乱顺序,只能传list
    print(s)

  • 相关阅读:
    基于Java的地铁线路查询系统设计思路
    个人总结05
    构建之法读书笔记03
    Java 8 (二) 新的时间API
    MySql基础笔记(三)其他重要的事情
    MySql基础笔记(二)Mysql语句优化---索引
    JavaScript基础笔记(十四)最佳实践
    JavaScript基础笔记(十三)测试和调试
    MySql基础笔记(一)Mysql快速入门
    JavaScript基础笔记(十二)Ajax
  • 原文地址:https://www.cnblogs.com/chendai21/p/8309550.html
Copyright © 2011-2022 走看看