Python模块知识6:OS、SYS模块,pythonos

Python模块知识6:OS、SYS模块,pythonos

1、os模块,和系统有关的,比方获取路线、目录、文件夹之类

常用方法:

  • os.getcwd() #获得当前职业目录,即眼下Python脚本专门的学问的目录路线

  • os.rename(‘oldname’,’new’)#重命名文件/目录

  • os.path.abspath(path) #归来path标准化的相对路线,含文件名的

  • os.path.dirname(path) #赢得文件所在的文书夹名称

  • os.chdir(“dirname”) #更换如今剧本的专业目录,约等于shell下的cd

  • os.path.join(path1[,path2[,…]])#将四个门路组合再次回到,第二个相对路线以前的参数将被忽视

  • 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.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.split(path)#将path分割成目录和文书名二元组再次回到

  • os.path.basename(path)#归来path最后的文本名,如何path以/或\终极,那么就能够回来空值,即os.path.split(path)第一个因素

  • os.path.exists(path) #如果path存在,返回True,如果path不存在,则返回False

  • os.path.isabs(path)#要是path是相对路线,再次来到True

  • os.path.isfile(path)#假如path是三个留存的文本,重回True,不然重返False

  • os.path.isdir(path)#假定path是一个设有的目录,则赶回True,不然重回False

  • os.path.getatime(path)#回来path所指向的文书或许目录最后存取的刻钟

用法案例:

案例1:分获相对路径和文件夹

import os
print(os.getcwd())#C:\Users\huhuanhuan\PycharmProjects\study2017
print(os.path.abspath(__file__))#方法1获取文件的绝对路径C:\Users\huhuanhuan\PycharmProjects\study2017\s1.py
print(os.path.abspath("s2.py"))#方法2获取文件的绝对路径C:\Users\huhuanhuan\PycharmProjects\study2017\s2.py
print(os.path.dirname(os.path.abspath(__file__)))#获取文件所在的文件夹C:\Users\huhuanhuan\PycharmProjects\study2017
print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))#C:\Users\huhuanhuan\PycharmProjects

效果:

案例2:获取相对路线和上级文件夹

import os
base_dir=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
print(os.path.abspath(__file__))
print(os.path.dirname(os.path.abspath(__file__)))
print (base_dir)

效果:

案例3:程序中常和sys结合使用,自动抬高目录

案例4:os.rename(‘oldname’,’new’)#重命名文件/目录

借使和顺序在同贰个索引,能够平昔写文件名,要是不在同一目录,供给拟定详细的门径。

案例5:os.chdir(“dirname”) 退换如今剧本的行事目录,也等于shell下的cd

2、SYS模块

    sys模块则是python程序用来呼吁解释器行为的接口。例如关于调节和测量试验类的(trace,
frames,except)等,profiling类(stats,
getsizeof),运行时景况类(python path, stderr,
stdout),解释器本身(如version)。inspect某种程度上能够当作是在sys提供的功能上的多个包装。

案例1:命令行参数List,第贰个成分是前后相继本人路线,sys.argv[0]为脚本名称

import sys

print(sys.argv)

结果:

[‘C:/Users/…/PycharmProjects/study2017/s2.py’]

案例2:再次回到python解释程序的版本新闻

print(sys.version)

3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:54:25) [MSC v.1900 64 bit
(AMD64)]

案例3:模块查找目录优先级。

sys.path是python的寻找模块的路线集,是叁个list

import sys
for item in sys.path:
print(item)

搜寻优先级:

案例4:即使s2不在系统的目录,则足以先加多,再导入s2文件:

import sys
sys.path.append('D:\\')#导入D盘文件夹
import s2#文件名

采纳sys.path.append(path)加多相关的不二等秘书籍,但在脱离python景况后本身充分的路子就能活动消失!

假设急需更加好地垄断(monopoly)输出,而print
无法满意你的要求,则可接纳职业的写入写出的机能;sys.stdout.write(),sys.stdout.flush()。

案例5:进程条案例:交易会示1%一向变到百分百

import time
import sys
def view_bar(num,total):
    rate=num/total
    rate_num=int(rate*100)
#d='\r%d%%'%(rate_num,)#\r代表重新回到当前行的首个位置,需要和时间停留配合使用,要么时针会有错,显示为一直变的数字,如17%
    d='\r%s>%d%%'%("="*num,rate_num)#如果是此语句,则显示方式可以为=================>17%
   sys.stdout.write(d)
    sys.stdout.flush()

if __name__=='__main__':
for i in range(0,101):
        time.sleep(0.5)
        view_bar(i,100)

效果:

一直到100%

os模块详解

os模块

提供对操作系统调用的接口
1.os.getcwd() 获取当前专门的工作目录,即当前python脚本职业的目录路线
2.os.chdir(“dirname”) 更换近日剧本工作目录;也正是shell下cd
3.os.curdir 再次回到当前目录: (‘.’)
4.os.pardir 获得当前目录的父目录字符串名:(‘..’)
5.os.makedirs(‘dirname1/dirname2’) 可生成多层递归目录
6.os.removedirs(‘dirname1’)
若目录为空,则删除,并递归到上一流目录,假使也为空,则删除,就那样推算
7.os.mkdir(‘dirname’) 生成单级目录;也正是shell中mkdir dirname
8.os.rmdir(‘dirname’)
删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir
dirname
9.os.listdir(‘dirname’)
列出钦赐目录下的有所文件和子目录,富含掩饰文件,并以列表方式打字与印刷
10.os.remove() 删除二个文本
11.os.rename(“oldname”,”newname”) 重命名文件/目录
12.os.stat(‘path/filename’) 获取文件/目录新闻
13.os.sep 出口操作系统特定的不二秘诀分隔符,win下为”\”,Linux下为”/”
14.os.linesep
输出当前平台采取的行终止符,win下为”\t\n”,Linux下为”\n”
15.os.pathsep 输出用于私分文件路线的字符串
16.os.name 出口字符串提醒当前应用平台。win->’nt’; Linux->’posix’
17.os.system(“bash command”) 运营shell命令,直接体现
18.os.environ 获取系统情状变量
19.os.path.abspath(path) 重回path标准化的绝对路线
20.os.path.split(path) 将path分割成目录和文书名二元组重回
21.os.path.dirname(path)
再次回到path的目录。其实正是os.path.split(path)的率先个要素
22.os.path.basename(path)
再次回到path最后的文本名。如何path以/或\最终,那么就能回来空值。即os.path.split(path)的第4个元素
23.os.path.exists(path)
如果path存在,返回True;如果path不存在,返回False
24.os.path.isabs(path) 倘若path是相对路径,再次回到True
25.os.path.isfile(path)
要是path是叁个设有的文件,重回True。不然重临False
26.os.path.isdir(path)
假设path是多少个存在的目录,则赶回True。否则再次回到False
27.os.path.join(path1[, path2[, …]])
将几个门路组合后赶回,第贰个相对路线此前的参数将被忽视
28.os.path.getatime(path) 再次来到path所指向的公文大概目录的末尾存取时间
29.os.path.getmtime(path) 再次回到path所指向的公文也许目录的尾声修改时间

1.作用:

sys模块

1.sys.argv 命令行参数List,第叁个成分是前后相继自身路线
2.sys.exit(n) 退出程序,符合规律退出时exit(0)
3.sys.version 获取Python解释程序的版本新闻
4.sys.maxint 最大的Int值
5.sys.path 再次来到模块的追寻路线,初叶化时利用PYTHONPATH景况变量的值
6.sys.platform 重返操作系统平台名称
sys.stdout.write(‘please:’)
val = sys.stdin.readline()[:-1]

Copyright @ 2015-2019 ca88 版权所有
网站地图xml地图