码迷,mamicode.com
首页 > 编程语言 > 详细

Python sys模块

时间:2017-11-29 16:20:42      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:local   python版本   查看系统   write   python3   好的   span   list   windows   

Python sys模块

sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分.

处理命令行参数

sys.argv       #现从程序外部向程序传递参数[*],0代表程序本身

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Time    : 2017/11/29 0029 11:31
# @Author  : ming
import sys
print(sys.argv)  
if len(sys.argv) > 1:
    print(sys.argv[0])
    print(sys.argv[1])
    print(sys.argv[2])
else:
    print("没有传递参数")
C:\Users\Administrator\PycharmProject\MyProject\myfunc>python ceshi.py arg1 arg2
[ceshi.py, arg1, arg2]  # 说明sys.argv 是一个包含参数的列表
ceshi.py #sys.argv[0] 代表脚本自身
arg1 # 第一个参数
arg2 # 第一个参数

sys.path       #获取指定模块搜索路径的字符串集合,可以将写好的模块放在得到的某个路径下,就可以在程序中import时正确找到

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Time    : 2017/11/29 0029 11:31
# @Author  : ming
import sys
print(type(sys.path))
for i in sys.path:
    print(i)
运行结果:
<class list>  # 说面sys.path 是一个列表 该列表中包含所有py文件可被搜索的路径或文件夹,只有在该目录中的模块或py文件才可以被imporp导入
C:\Users\Administrator\PycharmProject\MyProject\myfunc
C:\Users\Administrator\PycharmProject\MyProject
C:\Users\Administrator\AppData\Local\Programs\Python\Python35\python35.zip
C:\Users\Administrator\AppData\Local\Programs\Python\Python35\DLLs
C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib
C:\Users\Administrator\AppData\Local\Programs\Python\Python35
C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages

sys.version   #打印python版本

sys.platform  # 查看系统版本

sys.getdefaultencoding()  # 获取系统当前编码

sys.getfilesystemencoding() # 获取文件系统使用编码方式,Windows下返回‘mbcs‘,mac下返回‘utf-8‘

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys

print(sys.version)  # 查看平台版本
print(sys.platform)  # 查看系统版本
print(sys.getdefaultencoding())  # 获取系统当前编码
print(sys.getfilesystemencoding())  # 获取文件系统使用编码方式,Windows下返回‘mbcs‘,mac下返回‘utf-8‘
运行结果:
3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)]
win32
utf-8
mbcs

sys.stdin   #标准IO流,如果需要更好地控制输出,而print 不能满足你的要求, 它们就是你所需要的. 你也可以替换它们, 这时候你就可以重定向输出和输入到其它设备( device ), 或者以非标准的方式处理它们
sys.stdout
sys.stderr

制作进度条:  由于标准输入 不会自动回车
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys, time

for i in range(51):
    sys.stdout.write("\r")
    sys.stdout.write("%s%% | %s" % (int(i / 50 * 100), i * "|"))
    sys.stdout.flush()
    time.sleep(0.05)
运行结果: 动态的显示以下内容
100% | ||||||||||||||||||||||||||||||||||||||||||||||||||

 

Python sys模块

标签:local   python版本   查看系统   write   python3   好的   span   list   windows   

原文地址:http://www.cnblogs.com/ming5218/p/7920509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!