python 获取当前目录下文件(转)
今天继续整理原来写的 python 代码,下面是获取文件信息的 python 处理代码。
#!/usr/bin/env python2
#-*-encoding:utf-8-*-import os,sys
def listdir(dir,file):
file.write(dir +'\n')
fielnum =0
list = os.listdir(dir)#列出目录下的所有文件和目录
for line in list:
filepath = os.path.join(dir,line)
if os.path.isdir(filepath):#如果filepath是目录,则再列出该目录下的所有文件
myfile.write(' '+ line +'//'+'\n')
for li in os.listdir(filepath):
myfile.write(' '+li +'\n')
fielnum = fielnum +1
elif os.path:#如果filepath是文件,直接列出文件名
myfile.write(' '+line +'\n')
fielnum = fielnum +1
myfile.write('all the file num is '+ str(fielnum))
dir = raw_input('please input the path:')
myfile = open('list.txt','w')
listdir(dir,myfile)
myfile.close()
G:\codes\python\file_info
list.txt
list2.txt
list_filenames.py
list_filenames2.py
list_files+.py
test//
g.txt
mmm.pptx
test2//
list.txt
test3
all the file num is9
#!/usr/bin/env python2
#-*-encoding:utf-8-*-"""os.walk(path),遍历path,返回一个对象,
他的每个部分都是一个三元组,
('目录x',[目录x下的目录list],目录x下面的文件)"""import os
def walk_dir(dir,fileinfo,topdown=True):
for root, dirs, files in os.walk(dir, topdown):
for name in files:
print(os.path.join(name))
fileinfo.write(os.path.join(root,name)+'\n')
for name in dirs:
print(os.path.join(name))
fileinfo.write(' '+ os.path.join(root,name)+'\n')
dir = raw_input('please input the path:')
dir = r'G:\codes\python\file_info'
fileinfo = open('list2.txt','w')
walk_dir(dir,fileinfo)
fileinfo.close()
>>>================================ RESTART ================================
>>>
please input the path:G:\codes\python\file_info
list.txt
list2.txt
list_filenames.py
list_filenames2.py
list_files+.py
test
test2
g.txt
mmm.pptx
list.txt
test3
234.txt
G:\codes\python\file_info\list.txt
G:\codes\python\file_info\list2.txt
G:\codes\python\file_info\list_filenames.py
G:\codes\python\file_info\list_filenames2.py
G:\codes\python\file_info\list_files+.py
G:\codes\python\file_info\test
G:\codes\python\file_info\test2
G:\codes\python\file_info\test\g.txt
G:\codes\python\file_info\test\mmm.pptx
G:\codes\python\file_info\test2\list.txt
G:\codes\python\file_info\test2\test3
G:\codes\python\file_info\test2\test3\234.txt
#!/usr/bin/env python2
#-*-encoding:utf-8-*-import os
import sys
import md5def walk_dir(dir,fileinfo,topdown=True):
for root, dirs, files in os.walk(dir, topdown):
for name in files:
path = os.path.join(root,name)
md5v = sumfile(path)
newpath = path.replace(dir,'')
fileinfo.write(newpath + ':' + md5v + '\n')def sumfile(fpath):
m = md5.new()
fobj = open(fpath)
while True:
d = fobj.read(8096)
if not d:
break
m.update(d)
return m.hexdigest()#获取脚本文件的当前路径
def cur_file_dir():
#获取脚本路径
path = sys.path[0]
#判断为脚本文件还是py2exe编译后的文件,如果是脚本文件,则返回的是脚本的目录,如果是py2exe编译后的文件,则返回的是编译后的文件路径
if os.path.isdir(path):
return path
elif os.path.isfile(path):
return os.path.dirname(path)
#打印结果
print cur_file_dir()def main(): #dir = raw_input('please input the path:') dir = cur_file_dir() fileinfo = open('list3.txt','w') walk_dir(dir,fileinfo)if __name__ == '__main__': main()
\list.txt:0a732356981d24beab0d0c1c4092b2a7
\list2.txt:6cebc24b3a996be27c732557a2ce545f
\list3.txt:d41d8cd98f00b204e9800998ecf8427e
\list_filenames.py:9201c1eefcaf2fd04478cc2b6430c678
\list_filenames2.py:ca3f74bdb0a5485dd5d95d77da80141b
\list_files+.py:720d569d2f07f0c80e0d695db31749ab
\test\g.txt:d41d8cd98f00b204e9800998ecf8427e
\test\mmm.pptx:6f0e81ad84c22838337f0f619080e7f2
\test2\list.txt:d41d8cd98f00b204e9800998ecf8427e
\test2\test3\234.txt:d41d8cd98f00b204e9800998ecf8427e
python 获取当前目录下文件(转)的更多相关文章
- python 获取当前目录下的文件目录和文件名
python 获取当前目录下的文件目录和文件名 os模块下有两个函数: os.walk() os.listdir() 1 # -*- coding: utf-8 -*- 2 3 import os ...
- python获取目录下文件夹名称
path = '/opt' dirs = os.listdir(path) for dir in dirs: print dir
- python 运行当前目录下的所有文件
查看当前目录下所有py文件(本身除外run) import os file_list = os.listdir(os.getcwd()) # 获取当前目录下所有的文件名print(file_list ...
- python生成器 获取 目录下文件
# os.walk()和os.list 都是得到所有文件的列表, 如果目录下文件特别多, 上亿了, 我们就需要生成器的方式获取 # 要求目录下面没有目录, 会递归到子目录下面找文件, (如果有子目录可 ...
- Python获取当前路径下的配置文件
Python获取当前路径下的配置文件 有的时候想读取当前目录下的一个配置文件.其采用的办法是: import os # 获取当前路径 curr_dir = os.path.dirname(os.pat ...
- File获取当前目录下的所有子项 listFiles()
package seday03; import java.io.File; /** * 获取一个目录中的所有子项 * @author xingsir */public class ListFilesD ...
- spring java 获取webapp下文件路径
spring java 获取webapp下文件路径 @RequestMapping("/act/worldcup_schedule_time/imgdownload") @Resp ...
- java 获取classpath下文件多种方式
java 获取classpath下文件多种方式 一:properties下配置 在resources下定义server.properties register.jks.path=classpath\: ...
- springboot打成jar后获取classpath下文件失败
原文链接:https://blog.csdn.net/qq_18748427/article/details/78606432 springboot打成jar后获取classpath下文件失败 使用如 ...
随机推荐
- C# foreach,等量代换,冒泡排序
foreach: foreach (int h in a) //可以将数组读出来(自动遍历数组) { Console.WriteLi ...
- CSS元素定位6-10课
<精通CSS.DIV网页样式与布局>视频6-10课总结图: 元素定位 (1)float:left/right; 左浮动:脱离普通文档流向左浮动(即向左对齐):float属性必须应用在块级元 ...
- Java - 处理某些图片泛红
参考博文: http://blog.csdn.net/kobejayandy/article/details/44346809 http://blog.csdn.net/shixing_11/arti ...
- python用Tesseract读取图片中的中文,出现乱码
到http://download.csdn.net/detail/wanghui2008123/7621567下载中文简体包 然后找到tessdata目录,把eng.traineddata替换为chi ...
- Roslyn 学习笔记(一)
本文记录了Roslyn开发环境的安装与编译过程,参考了以下Roslyn项目的官方文档 https://github.com/dotnet/roslyn/blob/master/docs/contrib ...
- ie浏览器 jsp中链接参数为中文的处理
在js中,使用 encodeURIComponent(encodeURIComponent("警情抽查"))来处理参数,例如: mini.get("khxmdm" ...
- 《C与指针》第十五章练习
本章例程 15.1打开和关闭文件 #include <stdlib.h> #include <stdio.h> int main(int ac, char **av) { in ...
- eclipse编辑器配置
1.添加行号 在侧边空白处右键 勾选如图 2.改字体 window -> preferences 字体的常用配置 Consolas有一个问题是中文字体难以看清 解决方式有两种:一.把字体设置为C ...
- Exchange的AutoDiscover服务
最近工作中涉及到Exchange的AutoDiscover服务,最初想学习后输出一个博客文章.但是最后是找到一篇中文博客文章已经非常清楚的解释了这个问题,如下: http://didda.blog.5 ...
- linux 下如何抓取HTTP流量包(httpry)
基于某些原因你需要嗅探HTTP Web流量(即HTTP请求和响应).例如,你可能会测试Web服务器的性能,或者x奥uy调试Web应用程序或RESTful服务 ,又或者试图解决PAC(代理自动配置)问题 ...