python基础--目录的操作

 

>>> import os  #引入目录操作的包os >>> os.getcwd()  #获取当前的工作目录  c:current   w:wording   d:directory 'C:\\Users\\dell' >>> >>> os.chdir("d:\\pic")   #chdir切换目录 >>> os.getcwd() 'd:\\pic' >>> os.listdir()  #查看当前目录下有什么文件(只显示第一层),括号里可以指定参数路径 ['1.jpg', 'baidu.html']   >>> import os.path >>> os.path.isdir("d:\\pic")   #isdir判断是否是目录 True >>> os.path.isdir("d:\\pic\\1.jpg") False >>> os.path.isdir("d:\\a.txt") False >>> os.path.isfile("d:\\a.txt")   #isfile判断是否是文件 True >>>       小练习:统计一个目录下(一层目录),统计一下有多个文件 统计一下有多少个目录 算法: 1 定义文件计数的变量 2 定义文件夹计数的变量,并赋值0 3 使用os.listdir()获取所有的文件和目录名称,这个返回值是列表 4 使用for 进行遍历,使用os.path.isdir和isfile来分别判断是文件还是目录 如果是文件,则在文件计数的变量上+1,否则在目录计数的变量上加一 5 输出统计结果:文件计数和目录计数的变量值 import os import os.path file_count = 0 dir_count =0   for i in os.listdir("d:\\pic"):     print("取出的内容:",i)     if os.path.isfile("d:\\pic\\"+i):         file_count+=1     else:         dir_count+=1 print("文件个数:%s" %file_count) print("目录个数:%s" %dir_count)       >>> os.getcwd() 'd:\\pic' >>> os.remove("d:\\pic\\1.jpg")    #删除文件,只能一次删除一个文件 >>> os.listdir() ['baidu.html'] >>>   >>> os.mkdir("d:\\pic\\testman")   #创建目录 >>> os.mkdir("d:\\pic\\testman\\testman1") >>> os.mkdir("d:\\pic\\testman\\testman1\\testman3") >>> os.mkdir("d:\\pic\\testman\\testman1\\testman4") >>>   #删除目录 >>> os.mkdir("d:\\pic\\testman") >>> os.mkdir("d:\\pic\\testman\\testman1") >>> os.mkdir("d:\\pic\\testman\\testman1\\testman3") >>> os.mkdir("d:\\pic\\testman\\testman1\\testman4") >>> os.removedirs("d:\\pic\\testman\\testman1\\testman3")   >>> os.removedirs("d:\\pic\\testman\\testman1\\testman4")   #删testman4的时候把它的上级testman1和上上级testman中,只要是非空的目录一并删了,递归删除空目录 从路径的下面开始删除空目录,如果遇到了某个 目录非空(包含子目录或者文件)就停止删除目录了    >>> os.getcwd() 'd:\\pic' >>> os.path.isabs("a.txt")  #判断是否是绝对路径 False >>> os.path.isabs("d:\\a.txt") True >>> >>> if not os.path.exists("e:\\pic1\\2.txt"): ...     with open("e:\\pic1\\2.txt","w") as fp: ...         fp.write("")   创建一个10级目录,每个目录的名字从gloryroad1-10,每个目录创建一个文件,文件的名字是1-10.txt,文件内容写上文件名 算法: 1 写一个for 循环,循环10次 2 在循环体下,创建一个目录为gloroadi(i是循环的变量值),os.chdir进入到新创建的目录,然后用with方法创建文件, 文件名使用i变量+".txt"的方式来拼接文件名,然后使用w模式,给文件写内容,写的文件内容就是拼接的文件名 import os dir_name = "glroyroad" os.chdir("d:\\pic") for i in range(1,11):     os.mkdir(dir_name+str(i))     os.chdir(dir_name+str(i))     with open(str(i)+".txt","w") as fp:         fp.write(str(i)+".txt")     >>> os.listdir() ['baidu.html'] >>> os.listdir("d:\\") ['$RECYCLE.BIN', '2018冬季班光荣之路学习', '360downloads', '360WiFi', '360极速浏览器下载', '360驱动大师目录', 'a.py', 'a.txt', 'aa.py', 'apache-maven-3.6.1', 'apache-tomcat-8.5.40', 'apache-tomcat-8.5.43', 'AutoTestLog.log', 'b.txt', 'BaiduNetdiskDownload', 'CloudMusic', 'dataDriveRreport.log', 'fdf98c88a68350d8deab4a0ae668ba20', 'iDownload', 'library_data.txt', 'LR', 'mgtv', 'mgtv.cache', 'packagea', 'php', 'pic', 'python', 'qq.jtl', 'road', 'sample.xlsx', 'sohu.jtl', 'System Volume Information', 'VM box', 'wamp', 'Youku Files', '__pycache__', '常用文档', '软件', '迅雷下载'] >>> os.path.dirname("d:\\pic")   #获取路径名 'd:\\' >>> os.path.dirname("d:\\pic\\baidu.html") 'd:\\pic' >>> os.path.basename("d:\\pic\\baidu.html")   #获取文件名 'baidu.html' >>>   >>> os.path.splitext("d:\\pic\\baidu.html")   #切割文件名后缀和路径 ('d:\\pic\\baidu', '.html') >>> os.path.splitext("d:\\pic\\baidu.html")[0]    'd:\\pic\\baidu' >>> os.path.splitext("d:\\pic\\baidu.html")[1] '.html' >>>   >>> os.listdir() ['baidu.html'] >>> os.rename("baidu.html","bd.html")  #改名 >>> os.listdir() ['bd.html'] >>> os.path.getsize("d:\\pic\\bd.html")   #获取文件大小(字节数) 15625   >>> os.getcwd() 'd:\\pic' >>> os.rmdir("test") >>> os.mkdir("d:\\pic\\test") >>> os.listdir() ['bd.html', 'test'] >>> os.rmdir("test")  #删除目录 >>> os.listdir() ['bd.html'] >>>  
上一篇:python简单爬虫(爬取pornhub特定关键词的items图片集)


下一篇:原生js实现动画过渡效果