python常用模块
来源:互联网 发布:手机淘宝红包链接转换 编辑:程序博客网 时间:2024/06/07 05:02
- logging
日志是我们排查问题的关键利器,写好日志记录,当我们发生问题时,可以快速定位代码范围进行修改
logging将日志打印到屏幕,日志级别大小关系为:
CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET,当然也可以自己定义日志级别
默认logging默认的日志级别是info
日志的输出格式及方式 logging.basicConfigimport logginglogging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',datefmt=' %Y/%m/%d %H:%M:%S', filename='myapp.log', filemode='w')logger = logging.getLogger(__name__)logging.debug('This is debug message')logging.info('This is info message')logging.warning('This is warning message')
logging.getLogger([name]):创建一个日志对象
返回一个logger实例,如果没有指定name,返回root
logger,只要name相同,返回的logger实例都是同一个而且只有一个,即name和logger实例是一一对应的。这意味着,无需把logger实例在各个模块中传递。只要知道name,就能得到同一个logger实例。
logging.getLogger(name) 在上述实例中__name__就指的是__main__。 - OS模块
可以通过os模块调用系统命令,获得路径,获取操作系统的类型等都是使用该模块。
a、通过os 获取系统类型:os.name()
import os
print(os.name)
b、执行系统命令:
os.system('命令') 只会调用系统的命令
os.popen('命令') os.popen方法,os.popen()返回的是一个file对象
c、目录和文件相关操作
os.getcwd() : 获取路径
os.chdir() : 切换目录
os.listdir() : 列出目录文件 返回一个列表
os.mkdir() : 创建目录
os.remove() : 删除目录下的文件
os.linesep : 打印操作系统的分隔符
os.path.join(os.getcwd(), 'aaa', ‘bbb’, ‘ccc’) : 拼接出来多级目录
os.path.split('文件或者目录'): 把最后文件和目录分开
os.path.splitext('文件') : 把文件的后缀名和前面分开,返回一个tuple
os.path.splitdrive('目录') : 目录和后面分开 - command模块
通过python调用系统命令 只适用于linux。
commands是提供linux系统环境下支持使用shell命令的一个模块。
commands.getoutput(cmd),只返回执行shell命令的结果。import commandscmd = 'ls /opt'a = commands.getoutput(cmd)print(type(a))print(a)
commands.getstatusoutput(cmd)import commandscmd = 'ls /home/admin'c = commands.getstatusoutput(cmd)print(type(c))status, output = commands.getstatusoutput(cmd)print(status)print(output)print(type(output))
返回结果是一个tuple,第一个值是shell执行的结果,如果shell执行成功,返回0,否则,为非0,第二个是一个字符串,就是我们shell命令的执行结果,python通过一一对应的方式复制给status和output。 - sys模块
通过sys模块获取程序参数,python的sys模块默认是把第一个参数默认是程序本省,从第二个参数起都是代码后面跟着的参数,通过sys.arg[n]就可以获得传入到程序中的参数。import sysdef usage(): '''usage''' print 'Usage: %s %s %s %s' % (sys.argv[0], 'tokenid', 'Subject', 'Content') sys.exit()def main(): if len(sys.argv) != 4: usage() else: print(sys.argv[0]) print(sys.argv[1]) print(sys.argv[2]) print(sys.argv[3])if __name__ == "__main__": main()
sys.stdin\stdout\stderr
功能:stdin , stdout , 以及stderr 变量包含与标准I/O 流对应的流对象. 如果需要更好地控制输出,而print 不能满足你的要求, 它们就是你所需要的. 你也可以替换它们, 这时候你就可以重定向输出和输入到其它设备( device ), 或者以非标准的方式处理它们。
sys.stdout 与print
当我们在 Python 中打印对象调用 print obj 时候,事实上是调用了sys.stdout.write(obj+'\n'),print 将你需要的内容打印到了控制台,然后追加了一个换行符,print 会调用 sys.stdout 的 write 方法。
捕获sys.exit(n)调用
功能:执行到主程序末尾,解释器自动退出,但是如果需要中途退出程序,可以调用sys.exit函数,带有一个可选的整数参数返回给调用它的程序,表示你可以在主程序中捕获对sys.exit的调用。(0是正常退出,其他为异常)
exitfunc()函数,及当执行sys.exit(1)的时候,调用exitfunc()函数 sys.exit(1)后面的内容就不会执行了,因为程序已经退出。
阅读全文
0 0
- python模块 - 常用模块推荐
- 常用的python模块
- 常用的python模块
- python常用模块
- Python常用模块
- Python常用模块资料
- Python常用模块
- Python 常用模块
- Python常用模块
- python常用模块
- 常用的python模块
- Python常用模块资料
- Python常用模块
- Python常用模块资料
- Python 常用模块收集
- python常用模块
- python的常用模块
- 常用的python模块
- 一张“神图”看懂单机/集群/热备/磁盘阵列(RAID)
- 关于机器学习 你不得不思考这些问题
- RetrolFit+rxjava + okHttp与服务 交互的例子+取消retrolfit网络请求
- ImageLoder的加载图片
- OkHttp+MVP实现RecycleView显示数据
- python常用模块
- 听说AI不光能做双十一海报,还有了集体智慧 | TED演讲
- 2017 微信数据报告:你需要了解这些数据
- RecyclerView和okhttp结合 实现一个网络请求数据
- 第1145期AI100_机器学习日报(2017-11-06)
- 第1147期AI100_机器学习日报(2017-11-08)
- 第1148期AI100_机器学习日报(2017-11-09)
- 让搜索引擎看来更自然的高质量外链维度
- 多线程下载