python项目之 词典的实现
思路
从文本中读取全部单词,然后和输入的词对比,有的话就输出中文的释义。
知识点
文本读取
类和对象的使用
下一步要加入数据库功能
词库的链接
源码如下
# -*- coding: utf-8 -*-
import os
import sqlite3
class One_Word(object):
def __init__(self):
self.en = u""
self.num = 0
self.chs = []
def set_word(self, en, num, chs):
self.num = num
self.chs = chs
self.en = en
def ReadFile():
words =[]
with open('wwaa.txt','r',encoding='utf8') as f:
while True:
line = f.readline().strip('\n')
if line == "":
break
wod = line.split("=")
en = wod[1]
nums = f.readline().strip('\n').split("=")
num = int(nums[1])
i=0
chs = []
while i< num:
f.readline()
chs.append(f.readline().strip('\n'))
i += 1
word= One_Word()
word.en = en
word.chs = chs
word.num = num
words.append(word)
return words
def Jieshi(danci,words):
flag = False
chs = ""
for word in words:
if flag == True:
break
if danci == str(word.en):
num = word.num
chss = word.chs
flag =True
for chsa in chss:
chs += chsa
chs +="\n"
return chs
def main():
words = ReadFile()
print("|--------------------------------------------------|")
print("|------------------查询单词软件---------------------|")
print("|--------------------------刘云飞制作---------------|")
print("|--------------------------------------------------|")
while True:
word = input("查询:")
word_chs = Jieshi(word,words)
print('中文释义:')
if word_chs == "":
print("Not find word ->",word)
else:
print(word_chs)
print("--------------------------------------------------")
if __name__ == '__main__':
main()