标准库
2018-01-23 本文已影响0人
endian
标准库
Python标准库中包含了大量有用的模块,同时也是每个标准的Python安装包中的一部分。熟悉Python标准库十分重要,因为只要你熟悉可以做什么事,许多问题都能轻易解决
- sys模块
-
sys模块包括了一些针对特定系统的功能。我们已经了解过sys.argv列表中包括了命令行参数
-
案例:
>>> import sys >>> sys.version_info sys.version_info(major=3, minor=7, micro=0, releaselevel='alpha', serial=4) >>> sys.version_info.major == 3 True >>>
-
案例工作原理:sys模块包含一个version_info元组,它提供给我们版本信息。第一个条目是主版本信息
-
- 日志模块
-
如果你想一些调试信息或一些重要的信息存储在某个地方,以便你可以检查你的程序是否如你所期望那般运行,这个可以通过logging模块来实现
-
案例:
import os; import logging; import platform; if platform.platform().startswith('Windows'): logging_file = os.path.join(os.getenv('HOMEDRIVE'), os.getenv('HOMEPATH'), 'test.log'); else: logging_file = os.path.join(os.getenv('HOME'),'test.log'); print("Logging to",logging_file); logging.basicConfig( level = logging.DEBUG, format='%(asctime)s : %(levelname)s : %(message)s', filename = logging_file, filemode='w', ); logging.debug('Start of the program'); logging.info('Doing something'); logging.warning("Dying now");
- 案例工作原理:我们使用了三款标准库中的模块--os模块用以和操作系统交互,platform模块用以获取平台--操作系统---的信息,logging模块用来记录log信息
- 我们通过检查platform.platform()返回的字符串来确认我们正在使用的操作系统;我们使用os.path.join()函数来将这三部分位置信息聚合到一起。使用这一特殊函数,而非仅仅将这几段字符串拼凑在一起的原因是这个函数会确保完整的位置路径符合当前操作系统的预期格式
- 然后配置我们logging模块
-
- 每周模块系列
- 进一步探索标准库的最好办法是阅读Python Module of the Week系列