Learning Python(1)--操作文件和目录

Keynote

  • os模块的重要函数或变量:
    • os.name,操作系统类型。(linux->posix,windows->nt)
    • os.uname(),详细系统信息。(windows不支持此函数)
    • os.environ,环境变量;os.environ.get(‘key’),获得某个环境变量的值。
      操作文件和目录:
    • os.path.abspath('.'),查看当前目录的绝对路径。
    • os.path.join('/Users/michael', 'testdir'),在某个目录下创建一个新目录,首先把新目录的完整路径表示出来。
    • os.mkdir('/Users/michael/testdir'),然后创建一个目录。
    • os.rmdir('/Users/michael/testdir'),删除一个目录。
    • os.path.split('/Users/michael/testdir/file.txt'),拆分一个路径,后一部分总是最后级别的目录或文件名。
    • os.path.splitext('/path/to/file.txt),获取文件的扩展名。
    • os.rename('tset.txt','test.py'),对文件重命名。
    • os.remove('test.py'),删除文件。
      过滤文件:
    • os.listdir('.'),列出当前目录下的所有目录和文件。
    • os.path.isdir(x),x是否为目录。
    • os.path.isfile(x),x是否为文件。
  • Exercise:
    编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径。
-*— coding:utf-8 -*-
import os
def search_file(filename,path='.'):
    content=os.listdir(path)
    file_list=list()
    dir_list=list()
    for x in content:
        if os.path.isdir(os.path.join(path,x)):
            dir_list.append(x)
        elif os.path.isfile(os.path.join(path,x)):
            file_list.append(x)
    for x in file_list:
        if filename==x:
            print(os.path.join(path,filename))
    for x in dir_list:
            search_file(filename,os.path.join(path,x))
search_file('test.txt')

os.path.isdir(os.path.join(path,x))
os.path.isfile(os.path.join(path,x))

os.path.isdir(x),x必须为一个目录

参考:廖雪峰博客–操作文件和目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值