[Python] 纯文本查看 复制代码 '''
此程序以【全唐诗】这本书为基本,通过诗名或者诗句进行检索并显示出来
'''
def read(fn):
if fn:
code='utf-8'
code='ansi'
try:
with open(fn,'r',encoding=code) as f:
lines=f.readlines()
for line in lines:
if line[0]=='第':
break
for each in line:
print(each,end='')
print('='*48)
return lines
except:
print('文件错误,没有找到%s,或者编码/内容有误!'%fn)
return 0
TxtName='全唐诗'
texts=read(TxtName+'.txt')
while texts:
x=input('\n【%s】请输入诗名或者部分诗句:\n\n>>> ' % TxtName)
print('*'*48)
if x=='':
continue
count=0
part=''
for i in range(len(texts)):
if texts[i][0]=='第':
part=texts[i]
if x in texts[i] :
if count and count%2==0: #每次只显示2首诗
query=input('还有更多内容,是否继续?\n直接【回车】继续,其他键退出 >>> ')
if query!='':
break
print('*'*32)
print(part)
for j in range(1,30): #"【"
if i-j>=0 and "【" not in texts[i] and "【"in texts[i-j]:
while(j):
print(texts[i-j])
j-=1
break
print(texts[i])
for j in range(1,30):
if i+j>=(len(texts)) or "【"in texts[i+j]:
break
else:
print(texts[i+j])
9
print('*'*32)
count+=1
python对缩进要求高,这里被系统自动去了,哥们需要的话自行添加缩进。 |