# -*- coding: gb2312 -*-
import sys
import os
import cmd
from judge import *
#1.判断是否为闰年
#3.交互式命令运行(1.调用CMD ,2.可输入参数判断)
#4.简单网页测试(填表,判断)
#5.界面测试
#6.算出当年共有多少个周日,并输出具体时间
#2010-12-05#增加文件保存功能
x=[]
y=[]#定义全局变量
import os,cmd
class year(cmd.Cmd):
def __init__(self):
cmd.Cmd.__init__(self)
self.do_hello(self)
self.savemulu="C://"
self.savename='year.txt'
self.prompt='(判断闰年)>'#提示符
self.intro='''判断闰年程序 使用说明:
one #判断一个数是不是闰年,是闰年则结束,不是闰年继续输入
more #判断从开始到结束中间的闰年总数,并输出
savemulu #保存文件:指定文件保存目录,
savename #保存文件:指定文件名称
savefile #保存文件:保存文件
out #输出文件
removefile #善蹴文件
quit #退出程序
'''
def do_hello(self,arg):
print'************************************************************'
print' 软件版本 V0.2 '
print'************************************************************'
def help_hello(self):
print'This help_hello method'
def do_quit(self,arg):
print'退出程序'
sys.exit(1)
def help_quit(self):
print'exit'
def help_one(self):
print'判断一个数是不是闰年,是闰年则结束,不是闰年继续输入'
def do_one(self,arg):
xyear = int(raw_input("Enter one year: "))
while xyear!=0:
if judge(xyear):
print'%s 是闰年'%xyear
break
else:
print'%s 不是闰年'%xyear
xyear = int(raw_input("Enter one year: "))
def help_more(self):
print'判断从开始到结束中间的闰年总数,并输出'
def do_more(self,arg):
start = int(raw_input("Enter start year : "))
end = int(raw_input("Enter end year : "))
count=0
counti=0
global x
global y
while start<end:
if judge(start):
count+=1
x.append(start)
else:
counti+=1
y.append(start)
start+=1
print '/n从%s年到%s年之间一共有%s个闰年,分别是:'%(start,end,count),
for i in x[1:]:
print'%s'%i,
print '/n从%s年到%s年之间一共有%s个非闰年,分别是:'%(start,end,counti),
for j in y[1:]:
print'%s'%j,
def help_savemulu(self):
print'输入文件保存目录'
def do_savemulu(self,mulu):
while True:
mulu=raw_input("输入目录" )
panduan=os.path.exists(mulu)
if panduan==True:
print'已经存在目录%s,请重新输入'%mulu #输入目录并判断是否有相同名字
else:
os.makedirs(mulu)
print '成功创建新目录%s'%mulu #如不存在相同名称,则创建此目录
break
os.chdir(mulu) #更改当前目录为输入的目录
def help_savename(self):
print'输入文件名称'
def do_savename(self,filename):
while True:
filename = raw_input('输入文件名称')
if os.path.exists(filename):
print "error: '%s' already exists" % filename
else:
break
def help_savefile(self):
print'保存文件内容'
def do_savefile(self,arg):
filename = raw_input('输入文件名称')
open(filename,'a').write('/n闰年是:/n')
for i in x[1:]:
open(filename,'a').write('%3s'%(i))
open(filename,'a').write('/n非闰年是:/n')
for j in y[1:]:
open(filename,'a').write('%3s'%(j))
def help_out(self):
print'读取并输出测试文件'
def do_out(self,filename):
filename=raw_input('输入文件名称:')
try:
fname=open(filename,'r')
except IOError,e:
print'***打开文件出错:',e
else:
for k in fname.readlines():
print k
fname.close()
def help_removefile(self):
print '删除文件'
def do_removefile(self,filename):
filename=raw_input('输入要删除的文件名称:')
os.remove(filename)
def main():
a=year()
a.cmdloop()
if __name__=='__main__':
main()
————————————————————————————————————————————————————————————————————————————————
文件保存功能需增加