返回介绍

01. Python 工具

02. Python 基础

03. Numpy

04. Scipy

05. Python 进阶

06. Matplotlib

07. 使用其他语言进行扩展

08. 面向对象编程

09. Theano 基础

10. 有趣的第三方模块

11. 有用的工具

12. Pandas

sys 模块简介

发布于 2022-09-03 20:46:13 字数 5005 浏览 0 评论 0 收藏 0

In [1]:

import sys

命令行参数

sys.argv 显示传入的参数:

In [2]:

%%writefile print_args.py
import sys
print sys.argv
Writing print_args.py

运行这个程序:

In [3]:

%run print_args.py 1 foo
['print_args.py', '1', 'foo']

第一个参数 (sys.args[0]) 表示的始终是执行的文件名,然后依次显示传入的参数。

删除刚才生成的文件:

In [4]:

import os
os.remove('print_args.py')

异常消息

sys.exc_info() 可以显示 Exception 的信息,返回一个 (type, value, traceback) 组成的三元组,可以与 try/catch 块一起使用:

In [5]:

try:
    x = 1/0
except Exception:
    print sys.exc_info()
(<type 'exceptions.ZeroDivisionError'>, ZeroDivisionError('integer division or modulo by zero',), <traceback object at 0x0000000003C6FA08>)

sys.exc_clear() 用于清除所有的异常消息。

标准输入输出流

  • sys.stdin
  • sys.stdout
  • sys.stderr

退出Python

sys.exit(arg=0) 用于退出 Python。0 或者 None 表示正常退出,其他值表示异常。

Python Path

sys.path 表示 Python 搜索模块的路径和查找顺序:

In [6]:

sys.path

Out[6]:

['',
 'C:\\Anaconda\\python27.zip',
 'C:\\Anaconda\\DLLs',
 'C:\\Anaconda\\lib',
 'C:\\Anaconda\\lib\\plat-win',
 'C:\\Anaconda\\lib\\lib-tk',
 'C:\\Anaconda',
 'C:\\Anaconda\\lib\\site-packages',
 'C:\\Anaconda\\lib\\site-packages\\Sphinx-1.3.1-py2.7.egg',
 'C:\\Anaconda\\lib\\site-packages\\cryptography-0.9.1-py2.7-win-amd64.egg',
 'C:\\Anaconda\\lib\\site-packages\\win32',
 'C:\\Anaconda\\lib\\site-packages\\win32\\lib',
 'C:\\Anaconda\\lib\\site-packages\\Pythonwin',
 'C:\\Anaconda\\lib\\site-packages\\setuptools-17.1.1-py2.7.egg',
 'C:\\Anaconda\\lib\\site-packages\\IPython\\extensions']

在程序中可以修改,添加新的路径。

操作系统信息

sys.platform 显示当前操作系统信息:

  • Windows: win32
  • Mac OSX: darwin
  • Linux: linux2

In [7]:

sys.platform

Out[7]:

'win32'

返回 Windows 操作系统的版本:

In [8]:

sys.getwindowsversion()

Out[8]:

sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')

标准库中有 planform 模块提供更详细的信息。

Python 版本信息

In [9]:

sys.version

Out[9]:

'2.7.10 |Anaconda 2.3.0 (64-bit)| (default, May 28 2015, 16:44:52) [MSC v.1500 64 bit (AMD64)]'

In [10]:

sys.version_info

Out[10]:

sys.version_info(major=2, minor=7, micro=10, releaselevel='final', serial=0)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文