python学习——os模块

本文深入探讨了Python的os模块,包括os模块中的系统操作和文件管理,以及os.path模块用于判断和获取路径的功能。通过代码习题和实例,帮助读者掌握在Python中进行文件和目录操作的方法。

OS模块学习

一、代码习题

1、查找指定目录下的指定文件
2、打印出绝对路径
3、剪切到另一个指定文件夹

二、常用函数

1、os模块

系统操作
os.system:执行操作系统命令
os.sep:打印本系统使用的分隔符
os.name:显示你在使用系统(Windows:'nt',Linux/Unix:'posix')
os.getenv(环境变量名):读取环境变量
os.getcwd():获取当前路径
对文件的删改
os.remove():删除一个文件
os.rename():重命名一个文件
对目录增删改查
os.chdir():改变当前工作目录
os.listdir():打印当前路劲下文件和文件名
os.mkdir():在目标路径下创建一个目录
os.rmdir():删除一个空目录
os.makedirs():创建多层递归目录
os.removedirs():删除多层的递归空目录

2、os.path模块

判断
os.path.exists(path):判断文件或目录是否存在。存在:True 否:False
os.path.isfile(path):判断是否为文件。是:True 否:False
os.path.isdir(path):判断是否为目录。是:True 否:False
获取文件或目录路径
os.path.basename(path):获取path下的底层文件名或目录名
os.path.dirname(path):获取文件目录名
os.getsize(name):获取文件的大小
os.path.abspath(name):获取name文件的绝对路径
os.path.join(path,name):连接目录和(文件名或目录)

三、代码

import os

#获取输入path的dir,并判断是否存在。
def search_file():
    print("you dir now:{}".format(os.getcwd()))
    print("你有5次机会!")
    for i in range(5):
        pang=input("请输入你要在那个磁盘下操作:")
        os.chdir(pang+":\\")
        for i in os.listdir():
            print(i)
        dir_name=input("输入你在'{}'路径下的文件:".format(os.getcwd()))
        dir=os.path.join(os.getcwd(),dir_name)
        name=os.path.basename(dir)
        if name in dir:
            return True
            break
            print("存在!")
        else:
            print("请确认好文件路径!")
        print(dir)

#将文件复制到新目录,并重命名
def cut_file():
    if search_file():
        #Windows选择磁盘
        target_dir=input("请输入你在{}下要改变的路径:".format(os.getcwd()))#输入要剪切的目录
        if not os.path.exists(rarget_dir):
            target_dir=os.makedirs(target_dir)
            print("创建成功!")
        else:
            pass
        os.renames(dir,target_dir)

            #判断目录是否存在,不存在新建
            #使用重命名实现剪切
        print("ok!")

cut_file()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值