Python系统工具

Python系统工具

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

sys

sys.argv()

该方法实现从程序外部向程序传递参数 ,sys.argv 变量是一个包含了命令行参数的字符串列表,,利用命令行向程序传递参数。 其中,脚本的名称总是 sys.argv 列表的第一个参数,也就是sys.argv[0]。

import sys
print(sys.argv)
print(sys.argv[0])
print(sys.argv[1])
print(type(sys.argv))
 
def Test(num):
    num=int(num)
    print(num**2)
if __name__=='__main__':
    Test(sys.argv[1])
 
我们执行该文件:  python  test.py  10
['test.py','10']
test.py
10
<class 'list'>
100
可以看到,sys.argv[0]永远是模块的名字,从sys.argv[1]开始就是我们输入的参数

sys.exit(0)

功能:执行到主程序末尾,解释器自动退出,但是如果需要中途退出程序,可以调用 sys.exit() 函数,带有一个可选的整数参数返回给调用它的程序,表示你可以在主程序中捕获对 sys.exit 的调用。(0是正常退出,其他为异常)

sys.path

功能:获取指定模块搜索路径的字符串集合,可以将写好的模块放在得到的某个路径下,就可以在程序中import时正确找到。也就是环境变量。返回一个列表

sys.modules

功能:sys.modules是一个全局字典,该字典是python启动后就加载在内存中。每当程序员导入新的模块,sys.modules将自动记录该模块。当第二次再导入该模块时,python会直接到字典中查找,从而加快了程序运行的速度。它拥有字典所拥有的一切方法

sys.stdin、sys.stdout、sys.stderr

stdin、stdout 和 stderr 在Python中都是文件属性对象, 他们在python启动时自动与shell环境中的标准输入, 输出, 出错相关. 而python程序在shell中的I/O重定向是由shell来提供的,与python本身没有关系。python程序内部将stdin, stdout, stderr读写操作重定向到一个内部对象.

常见用法:
sys.argv:命令行参数List,第一个元素是程序本身路径 
sys.modules.keys(): 返回所有已经导入的模块列表 
sys.exc_info():获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息 
sys.exit(n) :退出程序,正常退出时exit(0) 
sys.hexversion :获取Python解释程序的版本值,16进制格式如:0x020403F0 
sys.version :获取Python解释程序的版本信息 
sys.maxint : 最大的Int值 
sys.maxunicode:最大的Unicode值 
sys.modules :返回系统导入的模块字段,key是模块名,value是模块 
sys.path :返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 
sys.platform :返回操作系统平台名称 
sys.stdout : 标准输出 
sys.stdin :标准输入 
sys.stderr  : 错误输出 
sys.exc_clear() :用来清除当前线程所出现的当前的或最近的错误信息 
sys.exec_prefix :返回平台独立的python文件安装的位置 
sys.byteorder :本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little' 
sys.copyright  : 记录python版权相关的东西 
sys.api_version :解释器的C的API版本 
sys.displayhook(value)  :如果value非空,这个函数会把他输出到sys.stdout,并且将他保存进__builtin__._.指在python的交互式解释器里,'_' 代表上次你输入得到的结果,hook是钩子的意思,将上次的结果钩过来 
sys.getdefaultencoding() :返回当前你所用的默认的字符编码格式 
sys.getfilesystemencoding() :返回将Unicode文件名转换成系统文件名的编码的名字 
sys.setdefaultencoding(name):用来设置当前默认的字符编码,如果name和任何一个可用的编码都不匹配,抛出 LookupError,这个函数只会被site模块的sitecustomize使用,一旦别site模块使用了,他会从sys模块移除 
sys.builtin_module_names :Python解释器导入的模块列表 
sys.executable  :Python解释程序路径 
sys.getwindowsversion():获取Windows的版本 
sys.stdin.readline()  :从标准输入读一行,sys.stdout.write("a") 屏幕输出a

OS

常用方法:
os.getcwd()                   #获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname")        # 改变当前脚本工作目录;相当于shell下cd
os.curdir                   #返回当前目录: ('.')
os.pardir                   #获取当前目录的父目录字符串名:('..')
os.makedirs('dir1/dir2')    #可生成多层递归目录
os.removedirs('dirname1')   #若目录为空,则删除,并递归到上一级目录,如若也为空,删除,依此类推
os.mkdir('dirname')         #生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname')        # 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname')       #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove()                 #删除一个文件
os.rename("oldname","new")   #重命名文件/目录
os.stat('path/filename')    #获取文件/目录信息
os.sep                      #操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep                 #当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep                 #用于分割文件路径的字符串
os.name                     #字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command")   #运行shell命令,直接显示
os.environ                  #获取系统环境变量

os.path

os.path.abspath(path) #返回绝对路径
os.path.basename(path) #返回文件名
os.path.commonprefix(list) #返回list(多个路径)中,所有path共有的最长的路径。
os.path.dirname(path) #返回文件路径
os.path.exists(path)  #路径存在则返回True,路径损坏返回False
os.path.lexists  #路径存在则返回True,路径损坏也返回True
os.path.expanduser(path)  #把path中包含的"~"和"~user"转换成用户目录
os.path.expandvars(path)  #根据环境变量的值替换path中包含的”$name”和”${name}”
os.path.getatime(path)  #返回最后一次进入此path的时间。
os.path.getmtime(path)  #返回在此path下最后一次修改的时间。
os.path.getctime(path)  #返回path的大小
os.path.getsize(path)  #返回文件大小,如果文件不存在就返回错误
os.path.isabs(path)  #判断是否为绝对路径
os.path.isfile(path)  #判断路径是否为文件
os.path.isdir(path)  #判断路径是否为目录
os.path.islink(path)  #判断路径是否为链接
os.path.ismount(path)  #判断路径是否为挂载点()
os.path.join(path1[, path2[, ...]])  #把目录和文件名合成一个路径
os.path.normcase(path)  #转换path的大小写和斜杠
os.path.normpath(path)  #规范path字符串形式
os.path.realpath(path)  #返回path的真实路径
os.path.relpath(path[, start])  #从start开始计算相对路径
os.path.samefile(path1, path2)  #判断目录或文件是否相同
os.path.sameopenfile(fp1, fp2)  #判断fp1和fp2是否指向同一文件
os.path.samestat(stat1, stat2)  #判断stat tuple stat1和stat2是否指向同一个文件
os.path.split(path)  #把路径分割成dirname和basename,返回一个元组
os.path.splitdrive(path)   #一般用在windows下,返回驱动器名和路径组成的元组
os.path.splitext(path)  #分割路径,返回路径名和文件扩展名的元组
os.path.splitunc(path)  #把路径分割为加载点与文件
os.path.walk(path, visit, arg)  #遍历path,进入每个目录都调用visit函数,visit函数必须有#3个参数(arg, dirname, names),
												dirname表示当前目录的目录名,names代表当前目录下的所有文件名,args则为walk的第三个参数
os.path.supports_unicode_filenames  #设置是否支持unicode路径名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值