作业:文件的读写
作业
import datetime
import random
def guide_page(guide_word):
file_name='second_text.txt'
print(guide_word)
with open(file_name,'a',encoding='utf-8') as f:
f.write(guide_word)
f.write('\n')
def guide_page1(guide_word):
file_name='second_text.txt'
with open(file_name,'a',encoding='utf-8') as f:
f.write(guide_word)
f.write('\n')
def all_num(n):
i=False
if n.isdigit()==i:
guide_page("不是int类型数字,请重新打开程序")
guide_page("*************")
return False
else:
return True
def num_equal(s):
l=list(s)
if l[0]==l[1]:
guide_page("起始值等于终止值,请重新打开程序")
guide_page("*************")
return False
else:
return True
def set_final_num(num1,num2):
l=[num1,num2]
guide_page("所产生的随机数字区间为【{0},{1}】".format(l[0],l[1]))
r=random.randint(l[0],l[1])
return r
def construct_range_value():
l=[0,0]
print("请输入数字起始值:")
n=input()
guide_page1("请输入数字起始值:{}".format(n))
all_num(n)
l[0]=int(n)
print("请输入数字终止值:")
m=input()
guide_page1("请输入数字终止值:{}".format(m))
all_num(m)
l[1]=int(m)
return l
def check_num_legal(l,num):
i=False
if num<l[0] or num>l[1]:
guide_page("超出范围,请重新输入")
guide_page("*************")
return i
def write_record(times,value):
file_name='second.txt'
rest="本次猜测数字为{0},已经猜测次数为{1},猜测时间为{2}".format(value,times,datetime.datetime.now())
with open(file_name,'a',encoding='utf-8') as f:
f.write(rest)
f.write('\n')
if __name__=='__main__':
while(True):
guide_page("*****************欢迎进入数字猜猜猜小游戏*****************")
l=construct_range_value()
chl=num_equal(l)
if chl==False:
break
r=set_final_num(l[0],l[1])
rd = 0
while True:
print("请输入您猜测的数字:")
stri = input()
guide_page1("请输入您猜测的数字:{0}".format(stri))
if all_num(stri)==False:
break
i = int(stri)
if check_num_legal(l, i)==False:
continue
if i<r :
guide_page("Lower than the number")
guide_page("*************")
rd+=1
write_record(rd,i)
elif i>r:
guide_page("Higher than the number")
guide_page("*************")
rd += 1
write_record(rd, i)
elif i==r:
rd+=1
write_record(rd,i)
break
guide_page("恭喜你!!你只用了{0}次就猜对了".format(rd))