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()