㈠ 关于python, 找出一个文件夹中最占空间的三个文件。用哪个函数来做呢,麻烦给讲讲思路。
这个问题很简单,你只要掌握了python的os模块的用法,很多和系统相关的问题都可以轻松搞定了。
import os
#os.listdir 列出当前路径下的所有内容
#os.path.isfile 判断是否是一个文件
#os.stat 得到文件的状态
#os.stat(item).st_size 得到文件大小
#
d=[ (os.stat(item).st_size, item) for item in os.listdir('.') if os.path.isfile(item) ]
d.sort(reverse=True) #按文件大小排序
[i[1] for i in d[:3]] #取前三个并取出文件名
如果是要递归地遍历子文件夹的话,请使用os.walk,但是要做一点额外的处理。
㈡ python 如何获取一个文件夹内包括子文件夹所有文件的名字和路径
importos
forroot,dirs,filesinos.walk('e:\case'):
forfilespathinfiles:
print(os.path.join(root,filespath))
㈢ 如何用Python实现查找"/"目录下的文件夹或文件,感谢
给你各相对来说容易理解的哈
import os
name=raw_input('filename:') #在这里输入你的查找值
a=os.listdir('/') #把所有/目录下的文件,目录存放入a
if name in a: #如果查找值在/目录下,进行进一步判断
if os.path.isdir(name): #判断是否为目录
print 'dir'
elif os.path.isfile(name) and os.pathislink(name): #符号连接即是文件又是link所以双重判断
print 'link'
elif os.path.isfile(name): #判断是否文件
print 'file'
else: #linux上文件类型多,不符合上面三种打印0ther
print 'other'
else: #不存在打印‘not exist’
print 'not exist'
㈣ 如何用python实现两个文件重复数据筛选并统计
本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴。具体方法如下:
对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在我们需要统计这个列表里的重复项,并且重复了几次也要统计出来。
方法1:
?
1234
mylist = [1,2,2,2,2,3,3,3,4,4,4,4]myset = set(mylist) #myset是另外一个列表,里面的内容是mylist里面的无重复 项for item in myset: print("the %d has found %d" %(item,mylist.count(item)))
方法2:
?
123456
List=[1,2,2,2,2,3,3,3,4,4,4,4]a = {}for i in List: if List.count(i)>1: a[i] = List.count(i)print (a)
利用字典的特性来实现。
方法3:
?
123
>>> from collections import Counter>>> Counter([1,2,2,2,2,3,3,3,4,4,4,4])Counter({1: 5, 2: 3, 3: 2})
这里再增补一个只用列表实现的方法:
?
12345678910
l=[1,4,2,4,2,2,5,2,6,3,3,6,3,6,6,3,3,3,7,8,9,8,7,0,7,1,2,4,7,8,9] count_times = []for i in l : count_times.append(l.count(i)) m = max(count_times)n = l.index(m) print (l[n])
其实现原理就是把列表中的每一个数出现的次数在其对应的位置记录下来,然后用max求出出现次数最多的位置。
只用这段代码的话,有一个缺点,如果有多个结果,最后的现实的结果只是出现在最左边的那一个,不过解决方法也很简单
㈤ 用python搜索文件夹内所有文件,并且根据名字打开其他文档
importglob,os,re
path_a='e:\A'
path_b='e:\B'
a_files=glob.glob('%s\*'%path_a)
b_files=glob.glob('%s\*'%path_b)
forfina_files:
file_name=os.path.basename(f)
file_name_in_folder_b=re.subn(ur'd{8}_d{2}_d{2}_d{2}_','',file_name)
full_path='%s\%s'%(path_b,file_name_in_folder_b)
iffull_pathinb_files:
file_in_b=open(full_path,'r')
㈥ 用python筛选csv文件中的一部分数据,输出为txt文件,求大神指导。
你可以用CD命令进入csv 的文件夹的位置,然后输入 *.csv aall.csv 将文件合并成一个csv文件,然后可以打开excel进行排序得出; 如果excel装不下可以使用access 的数据库进行筛选
㈦ python怎么查文件夹下所有文件
import os
import os.path
rootdir = “d:\data” # 指明被遍历的文件夹
for parent,dirnames,filenames in os.walk(rootdir): #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字
for dirname in dirnames: #输出文件夹信息
print "parent is:" + parent
print "dirname is:" + dirname
for filename in filenames: #输出文件信息
print "parent is:" + parent
print "filename is:" + filename
print "the full name of the file is:" + os.path.join(parent,filename) #输出文件路径信息