交个作业吧。求大神帮看看,自己觉得还行
Topic source第二题:感觉不错
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os
cha_path=input('输入查找路径:')
# 考虑到输入路径可能会出现'c:\aaa'和'c:\aaa\'【linux下'/aaa'和'/aaa/'】两种写法。下面加了一个if语句
cha_file=input('输入查找的字符串:')
for dir in os.walk(cha_path):
for x in dir[-1]:
if x.find(cha_file) != -1:
y=os.path.join(dir[0],x)
if cha_path[-1]=='/' or cha_path[-1]=='\\':
z=y.replace(cha_path[:-1],'.')
else:
z=y.replace(cha_path,'.')
print('文件名为:%s\n绝对路径为:%s\n对比输入目录的相对路径为:%s\n\n\n' % (x,y,z))
- 1
桭丶枫
第一题:照windows dos下dir命令搞起,像模像样
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os,stat,time
class dirfileinfo:
def __init__(self,name,width=0):
self.width=width
self.name=name
statinfo=os.stat(name)
self.time=time.strftime('%Y/%m/%d %H:%M',time.localtime(statinfo.st_mtime))
self.dir='<DIR>' if stat.S_ISDIR(statinfo.st_mode) else ' '
self.size=statinfo.st_size
def __str__(self):
return '{}{}{:{width}}{}'.format(self.time,self.dir,self.size,self.name,width=self.width)
# return '%s %s %s %s' % (self.time,self.dir,self.size,self.name)
if __name__ == '__main__':
width=0
dir_list=[]
for name in os.listdir('.'):
item=dirfileinfo(name)
width=max(width,len(str(item.size)))
dir_list.append(name)
for x in sorted(dir_list):
print(dirfileinfo(x,width))