简单python代码求教~谢啦
问题是这样的: 列出指定目录下所有的txt文件,并输出每个文件的创建日期和大小 下面是我写的,写着写这就晕了。大家帮忙看看好吗? #encoding=utf-8 import os,sys,string,time #检查是否是txt文件 def checktxt(str): l=string.split(str,".") if l[-1]=="txt": return True else: return False #打印单个txt文件的属性 def printtxt(f): l=os.stat(f) ct=time.gmtime(l.st_ctime) print time.strftime("%Y-%m-%d",ct) print l.st_size print f #参数检查 if len(sys.argv)<2: print "Usage listtxt directoryname" exit(-1) #列出指定目录下所有的txt文件 l=os.listdir(sys.argv[1]) print l l2=[] for f in l: if checktxt(f): l2.append(f) print l2 #打印出每个txt文件的属性 for f in l2: printtxt(f) 另外,还有一个问题,就是:“检查指定文本文件中的英文拼写,将所有句首的单词首字母大写。” 没一点思路诶……郁闷。 各位大哥大姐给点帮助吧~谢谢啦
最满意答案
第一题可以这样: import sys import os import time if len(sys.argv) < 2: print("Usage listtxt directoryname") exit(-1) for file in os.listdir(sys.argv[1]): suffix = os.path.splitext(file)[1] if suffix == ".txt": st = os.stat(sys.argv[1] + os.sep + file) print(file, time.strftime("%Y-%m-%d", time.gmtime(st.st_ctime)), st.st_size) 第二题有个不是很严谨的做法:把整个文本的内容读到一个buffer里面,遍历这个buffer,除了开头第一个字符外,后面每遇到一个“.”、“?”、“!”等表示一句话结束的字符,就把这个字符之后出现的第一个英文字符改为大写。 或者正则表达式也可以完成这样的工作。更多推荐
发布评论