私のハッシュコードは単語全体のタイトルのみを返します。 結果を表示するには、キーワード を少なくとも2単語以上入力し、結果を表示する(関数を取得する)必要があります。単語全体ではなくキーワードを検索
私のハッシュコード
class hashin:
def __init__(self):
self.size = 217 # size of hash table
self.map = [None] * self.size
def _get_hash(self, key):
hash = 0
for char in str(key):
hash += ord(char)
return hash % self.size
#returns the ASCII value of char in str(key)
def add(self, key, value): # add item to list
key_hash = self._get_hash(key)
key_value = [key, value]
if self.map[key_hash] is None:
self.map[key_hash] = list([key_value])
return True
else:
for pair in self.map[key_hash]:
if pair[0] == key:
pair[1] = value
return True
self.map[key_hash].append(key_value)
return True
def get(self, key): # search for item
key_hash = self._get_hash(key)
if self.map[key_hash] is not None:
for pair in self.map[key_hash]: # find pair of words
if pair[0] == key: # if pair is equals to the whole title of the word
return pair[0] + " - " + pair[1]
return "Error no results for %s \nEnter the correct word." % (key)
サンプル出力:キーワードを入力した場合には、全体のタイトルが
を入力した
(私は結果を表示する必要があるとしてもキーワードが入力されました)
私は必要なものは次のとおりです。 出力: うそつき - Kygos と自分の名前でCHEAと言い換える
あなたはより良い説明できる、あなたがよりよく理解するために、入力と出力の例を示すことができました。 – eyllanesc
それに加えて、pyqtとの関係を持っているので、サンプルがpyqtを必要としない機能はコードを示すので。 – eyllanesc
申し訳ありませんが、私は再び私の質問をrepolishしようとして、それについての写真を投稿します –