使用os库操作目录及文件

使用os.sep() 方法获取系统分隔符

print(os.sep)

使用os.name()方法获取操作系统的平台类型

print(os.name)

使用os.getcwd()方法获取当前工作目录

print(os.getcwd())

使用os.listdir()方法查询目录下的文件列表

print(os.listdir())

print(os.listdir("D:\\"))

使用os.mkdir()方法创建目录文件

os.mkdir("testcase")

os.mkdir("D:\\testcase")

使用os.rmdir()f=方法删除一个空目录

os.rmdir("testcase")

os.rmdir("D:\\testcase")

使用os.remove()方法删除指定文件

os.remove("123.txt")

os.remove("D:\\testcase\\123.txt")

使用os.rename()方法重命名目录或文件

print(os.rename("score.xlsx","score001.xlsx"))

通过os.path子模块来操作目录及文件

使用_file_特色成员返回当前文件的全路径

print(_file_)

使用os.path.dirname()方法返回文件所在目录

path1=os.path.dirname(_file_)

print(path1)

使用os.path.abspath()方法返回文件绝对路径

path2=os.path.dirname(_file_)

print(path2)

使用os.path.join()方法进行路径拼接

path4=os.path.join(os.path.dirname(_file_),'Test.py')

print(path4)

使用os.path.exists()方法判断路径是否存在

使用logging库记录日志信息

日志的常用函数

logging.basicConfig(**kwargs)

logging.debug(msg,*args,**kwargs)

logging.info(msg,*args,**kwargs)

logging.warning(msg,*args,**kwargs)

logging.error(msg,*args,**kwargs)

logging.critical(msg,*args,**kwargs)

basicConfig()方法的使用

logging.basicConfig(

  level=logging.INFO,

  format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s:%(message)s'

)

将日志输出到控制台

创建控制台实例

sh = logging.StreamHandler()

设置控制台输出到日志级别

sh.setLevel(logging.DEBUG)

设置控制台输出到日志格式

format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s:%(message)s'

sh.setFormatter(formatter)

将日志输出到文件

logger = logging.getLogger('test_logger')

fh = logging.FileHandler('api.log',mode='a',encoding='utf-8') 创建文件实例

fh.setFormatter(formatter)

加入异常处理机制

try:

  open('/path/exit','rb')

  logger.info('文件正常打开')

except Exception as e:

  logger.error('抱歉,打开失败啦')

Python库之os库和logging库的基本使用说明的更多相关文章

  1. Python:Day18 os模块、logging模块、正则表达式

    迭代器 满足迭代器协议: 1.内部有next方法 2.内部有iter()方法 os模块 import os print(os.getcwd()) #C:\Users\Lowry\PycharmProj ...

  2. 【踩坑记录】记录一次使用Python logging库多进程打印日志的填坑过程

    背景: 项目使用Python自带的logging库来打印日志 项目部署在一台Centos7的机器上 项目采用gunicorn多进程部署 过程: 1.LOG日志代码封装: 采用logging库,并设置w ...

  3. 20个必不可少的Python库也是基本的第三方库

    个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy. ...

  4. Python日志库logging总结-可能是目前为止将logging库总结的最好的一篇文章

    在部署项目时,不可能直接将所有的信息都输出到控制台中,我们可以将这些信息记录到日志文件中,这样不仅方便我们查看程序运行时的情况,也可以在项目出现故障时根据运行时产生的日志快速定位问题出现的位置. 1. ...

  5. python的logging库

    logging库 简介 logging库提供日志打印功能. 值得一提的是,不仅能打印到日志文件,还能打印到控制台. 日志级别 logging一共分为5个级别,从低到高依次为:  DEBUG<IN ...

  6. Python入门(六):标准库

    操作系统接口 os模块提供了不少与操作系统相关联的函数. import os os.getcwd() # 返回当前的工作目录 os.chdir('d:/') # 修改当前的工作目录 os.system ...

  7. Python爬虫基础(一)urllib2库的基本使用

    爬虫也就是所谓的网络数据采集,是一种通过多种手段收集网络数据的方式,不光是通过与 API 交互(或者直接与浏览器交互)的方式.最常用的方法是写一个自动化程序向网络服务器请求数据(通常是用 HTML 表 ...

  8. Python 开发安卓Android及IOS应用库Kivy安装尝试

    Python 开发安卓Android及IOS应用库Kivy安装尝试: 先来看看这货可以用来制作什么应用: Create a package for Windows Create a package f ...

  9. Python的标准库介绍与常用的第三方库

    Python的标准库介绍与常用的第三方库 Python的标准库: datetime:为日期和时间的处理提供了简单和复杂的方法. zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip, ...

  10. Python 中如何自动导入缺失的库?

    在写 Python 项目的时候,我们可能经常会遇到导入模块失败的错误:ImportError: No module named 'xxx'或者ModuleNotFoundError: No modul ...

随机推荐

  1. Docker之RabbitMQ保姆级别安装

    Docker之RabbitMQ保姆级别安装: 如果觉得样式不好:跳转即可 http://www.lifengying.site/(md文件复制过来有些样式会不一样) 学英语网站项目:自己先保证Redi ...

  2. jeecg 自定义loading框(导入时加载备份/ajax请求加载loading)

    第一种: 1.导入t:upload标签 <t:upload name="fiels" buttonText="选择文件" uploader="p ...

  3. 查询某数据库的某字段存在于哪些表 mysql

    select column_name,column_comment,data_type ,table_name  from information_schema.columns where table ...

  4. CSS中Position几种属性的总结

    定位position 定位方向:left  right  top  bottom 静态定位:static  默认值,就是文档流 绝对定位:absolute    特点: 1.不占据原来的位置(脱标) ...

  5. mysql零基础-1

    数据库概述 为什么要使用数据库 持久化 DB:数据库 DBMS:数据库管理系统 SQL:结构化查询语言 数据库与数据库管理系统关系 数据库管理系统(DBMS)可以管理多个数据库,一般开发人员会针对每一 ...

  6. Jmeter九、jmeter中的函数和beanshell

    beanshell  松散类型的脚本语言 可在里面自定义函数

  7. 20181224蒋嘉豪-exp4

    20181224蒋嘉豪-exp4 目录 20181224蒋嘉豪-exp4 实验概况 1.实践目标 2.实践内容概述 知识点总结 1.有关schtasks 2.有关Sysmon(参考链接) 3.恶意代码 ...

  8. api接口基础Day2

    精华笔记: 正则表达式: 用于描述字符串的内容格式,使用它通常用于匹配一个字符串是否符合格式要求 正则表达式的语法:-------------了解.不用纠结.不用深入研究 1.[]:表示一个字符,该字 ...

  9. algorithm learning for Leetcode (1)

    Leetcode 算法学习(一) 前言:最近学校要求必须学习C++,着重提升技能板块.为了快速升级,我在GitHub上发现了一个开源的学习号召: https://labuladong.github.i ...

  10. Object.definedProperty和Proxy的对比

    Object.definedProperty和Proxy经常用来实现对象的劫持 Object.definedProperty是vue2.x拦截对象属性变化的方法,再结合订阅-发布者模式和观察者模式实现 ...