python os模块 常用命令


os 模块用法示例


python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。以下列举常用的命令

1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回’posix'


2. os.getcwd()——得到当前工作的目录。

3. os.listdir()——指定所有目录下所有的文件和目录名。
  os.listdir(".") 
  os.listdir(os.getcwd()) #获得当前目录中的内容

以列表的形式全部列举出来,其中没有区分目录和文件。

4. os.remove()——删除指定文件

5. os.rmdir()——删除指定目录

6. os.mkdir()——创建目录

注意:这样只能建立一层,要想递归建立可用:os.makedirs()
7. os.path.isfile()——判断指定对象是否为文件。是返回True,否则False

8. os.path.isdir()——判断指定对象是否为目录。是True,否则False。
os.path.isdir(".")


['softwares', '2017fuwuqi', 'Downloads', '.local', '.luahistory', '.vnc', '.presage', '.config', '.thunderbird', 'Documents', '.enthought', '.remmina', '.ipynb_checkpoints', 'Videos', 'tigervnc', '.bashrc', 'examples.desktop', 'mxnet', '.python_history', '.keras', '.pki', '.bash_logout', 'torch', 'Untitled.ipynb', '.theanorc', 'Desktop', '.nano', 'googlehost', '.sogouinput', '.mozilla', '.sudo_as_admin_successful', '.lesshst', 'bin', 'miscellaneous', '.dbus', '.ICEauthority', '.java', '.nv', '.xsession', 'creataccount.txt', '.gnome2', 'Pictures', '.pam_environment', '.cmake', '.jupyter', '.ipython', 'Templates', '.adobe', 'intel', '.swp', '.rpmdb', '.wget-hsts', '.subversion', 'Public', '.imagej', '.bash_history', '.xinputrc', '.xsession-errors.old', '.cache', '.selected_editor', '.Xauthority', 'solution-grt123-team.pdf', '.viminfo', '.rnd', '.profile', '.TIM_Grid_Data.txt.swp', '.theano', '.nvidia-settings-rc', '.oracle_jre_usage', 'test.py', 'xsession', '.xsession-errors', '.gconf', '.compiz', 'Untitled1.ipynb', '.dmrc', '\xe8\xb4\xa6\xe6\x88\xb7\xe4\xbd\xbf\xe7\x94\xa8\xe8\xaf\xb4\xe6\x98\x8e', '.macromedia', 'caffeinstallbackup', 'matlabtestfordeeplearning', 'Music', '.gnupg', 'backup', 'ping.sh', '.matlab']

  9. os.path.exists()——检验指定的对象是否存在。是True,否则False.

 os.path.exists("./backup")
10. os.path.split()——返回路径的目录和文件名。

os.path.split("/home/bids/ping.sh") 

   ('/home/bids''ping.sh') 

此处只是把前后两部分分开而已。就是找最后一个'/'

os.path.split("/home/bids/") 
('/home/bids','')

11. os.getcwd()——获得当前工作的目录(get current work dir)

12. os.system()——执行shell命令。例:

     os.system("echo 'hello world!'")
hello world!
0

注意:此处运行shell命令时,如果要调用python之前的变量,可以用如下方式:

var=123
os.environ[‘var’]=str(var) //注意此处[]内得是 “字符串”
os.system(‘echo $var’)


os.environ    #获取系统环境变量

#在 import tensorflow 之前加入

import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='1' # 这是默认的显示等级,显示所有信息

#2级
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2' # 只显示 warning 和 Error

#3级
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='3' # 只显示 Error

13. os.chdir()——改变目录到指定目录
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os, sys
path = "/tmp"
# 查看当前工作目录
retval = os.getcwd()
print "当前工作目录为 %s" % retval
# 修改当前工作目录
os.chdir( path )
# 查看修改后的工作目录
retval = os.getcwd()
print "目录修改成功 %s" % retval

执行以上程序输出结果为:

当前工作目录为 /www
目录修改成功 /tmp



14. os.path.getsize()——获得文件的大小,如果为目录,返回0
15. os.path.abspath()——获得绝对路径。
os.path.abspath(".")
'/home/bids'
16. os.path.join(path, name)——连接目录和文件名。
os.path.join('/home/bids/','ping.sh')
'/home/bids/ping.sh'
17.os.path.basename(path)——返回文件名
os.path.basename('/home/bids/ping.sh')
'ping.sh'
18. os.path.dirname(path)——返回文件路径
os.path.dirname('/home/bids/ping.sh')
'/home/bids'
19. 获得程序所在的实际目录

import os
import sys

if __name__ == "__main__":
    print os.path.realpath(sys.argv[0])
    print os.path.split(os.path.realpath(sys.argv[0]))
    print os.path.split(os.path.realpath(sys.argv[0]))[0]



/home/jihite/ftp/del.py
('/home/jihite/ftp', 'del.py')
/home/jihite/ftp 

细节——os.path.spilit()把目录和文件区分开
>>> import os
>>> os.path.split("a/b/c/d")
('a/b/c', 'd')
>>> os.path.split("a/b/c/d/")
('a/b/c/d', '')
20. os.rename("oldname","newname")


 os.getcwd()
'/home/bids/hahaha'
os.listdir()
['test']
os.rename('test','test_new')
os.listdir()
['test_new']

  1. os.sep #显示当前平台下路径分隔符
    os.sep
    ‘/’ #linux

    os.sep
    ‘\’ #windows


os.linesep #给出当前平台使用的行终止符
os.linesep
‘\n’ #linux

os.linesep
‘\r\n’ #windows
“`


参考文献


python os模块 常用命令

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值