资讯专栏INFORMATION COLUMN

python 学习笔记 3 os模块介绍

antz / 2274人阅读

摘要:此函数用于删除文件目录。此函数将绝对路径拆成文件名和路径两部分此函数将绝对路径拆成路径文件和文件后缀两部分此函数用于重命名文件。这一行代码的目的是显示当前目录中所有的目录

0.前置说明

运行环境:Win7虚拟机、python2.7(anacoda版)

本文大部分内容引用此参考文献并极力推荐根据此人博客学习python:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fa...

OS模块中有些函数的存在与否以及使用方式是和操作系统息息相关

1.环境变量函数 1.1 os.name
In [1]: import os
In [2]: os.name
Out[2]: "nt" #nt表示Windows操作系统,如果是posix,说明系统是Linux、Unix或Mac OS X
1.2 os.uname

显示操作系统详细信息,下面的例子是直接copy参考文献的,有机会可以试试。

>>> os.uname()
("Darwin", "iMac.local", "13.3.0", "Darwin Kernel Version 13.3.0: Tue Jun  3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_64", "x86_64")
1.3 os.environ

显示系统的环境变量,以dict形式显示.

In [5]: os.environ

Out[5]: {"TMP": "C:Users
juptAppDataLocalTemp", "COMPUTERNAME": "NJUPT
_2589D", "USERDOMAIN": "NJUPT_2589D", "PSMODULEPATH": "C:Windowssystem32Wi
ndowsPowerShellv1.0Modules", "COMMONPROGRAMFILES": "C:Program Files (x86
)Common Files", "PROCESSOR_IDENTIFIER": "Intel64 Family 6 Model 62 Stepping 4,
 GenuineIntel", "PROGRAMFILES": "C:Program Files (x86)", "PROCESSOR_REVISION":
 "3e04", "SYSTEMROOT": "C:Windows", "PATH": "C:Program Files (x86)Common F
ilesNetSarang;C:Program Files (x86)ParallelsParallels ToolsApplication
s;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSys
tem32WindowsPowerShellv1.0;C:Program FilesTortoiseSVNin;C:Program
 Files (x86)
odejs;C:Python27;C:Program FilesJavajdk1.7.0_71in;C:
Program FilesJavajdk1.7.0_71jrein;C:TDM-GCC-64in;C:Users
jup
tAnaconda;C:Users
juptAnacondaScripts;C:Ruby21-x64in;C:Users

juptAppDataRoaming
pm", "PROGRAMFILES(X86)": "C:Program Files (x86)"

#内容太长我就显示一部分了。
1.4 os.getenv
In [7]: os.getenv("path")

Out[7]: "C:Program Files (x86)Common FilesNetSarang;C:Program Files (x86
)ParallelsParallels ToolsApplications;C:Windowssystem32;C:Windows;C:
WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:P
rogram FilesTortoiseSVNin;C:Program Files (x86)
odejs;C:Python27;C:
Program FilesJavajdk1.7.0_71in;C:Program FilesJavajdk1.7.0_71jr
ein;C:TDM-GCC-64in;C:Users
juptAnaconda;C:Users
juptAnaconda
Scripts;C:Ruby21-x64in;C:Users
juptAppDataRoaming
pm"
使用技巧以及注意事项

貌似里面的参数大小写不限~

2.文件操作函数 2.1 os.path.abspath

此函数用于查看当前目录的绝对路径

In [2]: os.path.abspath(".")
Out[2]: "C:Users
jupt"
2.2 os.path.join

此函数用于路径合成,第一个参数可以放os.path.abspath函数的返回值,也可以直接放字符串。
极力推荐使用此方法来合成路径,其会自动帮你转成系统可用的路径格式

In [3]: os.path.join(os.path.abspath("."), "testdir")
Out[3]: "C:Users
jupt	estdir"
2.3 os.mkdir

此函数用于创建文件目录。

In [4]: os.mkdir(os.path.join(os.path.abspath("."), "testdir"))
2.4 os.rmdir

此函数用于删除文件目录。

In [6]: os.rmdir(os.path.join(os.path.abspath("."), "testdir"))
使用技巧以及注意事项

Windows下面不能删掉非空文件夹。

2.5 os.path.split

此函数将绝对路径拆成文件名和路径两部分

In [7]: os.path.split("C:/names/yob1895.txt")
Out[7]: ("C:/names", "yob1895.txt")
2.6 os.path.splitext

此函数将绝对路径拆成路径文件和文件后缀两部分

In [8]: os.path.splitext("C:/names/yob1895.txt")
Out[8]: ("C:/names/yob1895", ".txt")
2.7 os.rename

此函数用于重命名文件。如果文件不存在则报错

In [10]: os.rename("test.txt", "test.py")
2.8 os.remove

此函数用于删除文件,文件不存在时报错

In [13]: os.remove("test.py")
2.9 os.getcwd

此函数用于显示当前程序的工作目录

In [2]: os.getcwd
Out[2]: "C:Users
jupt"
2.10 os.chdir

此函数用于改变程序的工作目录

In [2]: os.getcwd()
Out[2]: "C:Users
jupt"
In [3]: os.chdir("C:wamp")
In [4]: os.getcwd()
Out[4]: "C:wamp"
3 一个抄来的例子

感觉本文开头的引文中的一个小例子不错可以抄来学习一下。

#这一行代码的目的是显示当前目录中所有的目录
In [12]: [x for x in os.listdir(".") if os.path.isdir(x)]
Out[12]:
[".android",
 ".config",
 ".continuum",

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/37581.html

相关文章

  • Python 3 学习笔记之——标准库概述

    摘要:操作系统接口模块提供了一些与操作系统相关联的函数。返回当前目录下所有图片的文件名命令行参数在命令行中运行命令时,这些参数会以列表形式保存在模块的变量中。日期和时间模块为日期和时间处理同时提供了简单和复杂的方法。 1. 操作系统接口 os 模块提供了一些与操作系统相关联的函数。 >>> os.getcwd() # 获取当前工作目录 /home/senius >>>...

    canger 评论0 收藏0
  • python学习笔记 - 操作文件和目录

    摘要:对目录的操作获取绝对路径合并目录。总是将把一个路径拆分为两部分,后一部分总是最后级别的目录或文件名对文件进行操作重命名删除文件删除目录时,目录必须为空删除目录,模块的扩展版。和需是文件可以是文件或者是目录。打印出所有的目录。 pytho的os、os.path模块给我买提供了很多对文件或者目录进行操作的方法。 os.path 对目录的操作 import os.path print os...

    xialong 评论0 收藏0
  • 我的开源 GitBook: Python 之旅

    摘要:我在写作的过程中,给自己提了一个要求尽量深入浅出,条理清晰。至于是否达到了,希望读者们多多批评指正,并给我提意见和建议。第章介绍中的函数式编程,包括匿名函数闭包和装饰器等。第章介绍使用处理进程线程和协程。 showImg(https://segmentfault.com/img/remote/1460000007990784?w=268&h=385); 在学习和使用 Python 的过...

    赵连江 评论0 收藏0
  • Tornado学习笔记(2)

    摘要:而这里的方法则是告诉来读取模板文件,并将结果返回给浏览器。依旧可以使用,等条件控制语句,但是要记得以结尾。替换字符串中的字符为编码形式。模块模块是封装模板中包含的标记样式以及行为的可复用组件。 表单和模板 import os.path import tornado.httpserver import tornado.ioloop import tornado.options impo...

    tianyu 评论0 收藏0
  • python学习笔记 - fork, multiprocessing

    摘要:近年来,人工智能的兴起使得更加火爆了。获取当前进程父进程的。但是唯一遗憾的是,函数只能在系统中使用,不能在系统中使用。因此在下,需要将其包含在中。则是立即返回一个可迭代对象。则是返回可迭代函数。 Python一直是一门对初学者非常友好的语言,在数据分析、Web 开发、网络安全、网络爬虫等方面应用广泛。近年来,人工智能的兴起使得 Python 更加火爆了。 我们在处理大量数据或者需要快速...

    littleGrow 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<