-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeepdict.py
More file actions
160 lines (142 loc) · 6.56 KB
/
deepdict.py
File metadata and controls
160 lines (142 loc) · 6.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
import difflib as df
import json as j
import banner
__author__ = "Shubhadeep"
__version__ = 0.2
banner.banner()
data = j.load(open("data.json", "r"))
data_keys = data.keys()
def deep_dict(w):
word = w.lower()
match = df.get_close_matches(word, data_keys, n=4)
if word in data:
return data[word]
def first_match():
if match[0] in data:
ans = input("\n You mean {} instead? y (yes) n (no) : ".format(match[0]))
if len(ans) == 0:
print("[-] You didn't enter any value \n")
return first_match()
elif ans == "y" or ans == "Y" or ans == "yes":
return data[match[0]]
elif ans == "n" or ans == "N" or ans == "no":
def second_match():
if match[1] in data:
ans1 = input("\n You mean {} instead? y (yes) n (no) : ".format(match[1]))
if len(ans1) == 0:
print("[-] You didn't enter any value \n")
return second_match()
elif ans1 == "y" or ans1 == "Y" or ans1 == "yes":
return data[match[1]]
elif ans1 == "n" or ans1 == "N" or ans1 == "no":
def third_match():
if match[2] in data:
ans2 = input("\n You mean {} instead? y (yes) n (no) : ".format(match[2]))
if len(ans2) == 0:
print("[-] You didn't enter any value \n")
return third_match()
elif ans2 == "y" or ans2 == "Y" or ans2 == "yes":
return data[match[2]]
elif ans2 == "n" or ans2 == "N" or ans2 == "no":
def fourth_match():
if match[3] in data:
ans3 = input(
"\n You mean {} instead? y (yes) n (no) : ".format(match[3]))
if len(ans3) == 0:
print("[-] You didn't enter any value \n")
return fourth_match()
elif ans3 == "y" or ans3 == "Y" or ans3 == "yes":
return data[match[3]]
elif ans3 == "n" or ans3 == "N" or ans3 == "no":
print("\n [-] sorry we couldn't find the meaning of that word \n")
return again()
else:
print(
"[-] You enter a wrong value. \n Please enter y(yes) or n(no) ")
return fourth_match()
if __name__ == '__main__':
oup0 = fourth_match()
if type(oup0) == list:
banner.line()
for _ in oup0:
print(_)
banner.line()
else:
return oup0
return again()
else:
print("[-] You enter a wrong value. \n Please enter y(yes) or n(no) ")
return third_match()
if __name__ == '__main__':
oup1 = third_match()
if type(oup1) == list:
banner.line()
for ll in oup1:
print(ll)
banner.line()
else:
return oup1
return again()
else:
print("[-] You enter a wrong value. \n Please enter y(yes) or n(no) ")
return second_match()
if __name__ == '__main__':
oup2 = second_match()
if type(oup2) == list:
banner.line()
for i in oup2:
print(i)
banner.line()
else:
return oup2
return again()
else:
print("[-] You enter a wrong value. \n Please enter y(yes) or n(no) ")
return first_match()
if __name__ == '__main__':
oup = first_match()
if type(oup) == list:
banner.line()
for l in oup:
print(l)
banner.line()
else:
return oup
return again()
def inp():
try:
word = input('''
▌
▌ ▌ ▞▀▖ ▙▀▖ ▞▀▌ ▐▌
▐▐▐ ▌ ▌ ▌ ▌ ▌ ▗▖
▘▘ ▝▀ ▘ ▝▀▘ ▝▘ ''')
if len(word) == 0:
print("[-] You didn't enter the word \n")
return inp()
oup = deep_dict(word)
if type(oup) == list:
banner.line()
for l in oup:
print(l)
banner.line()
else:
return oup
except IndexError or TypeError or ValueError or KeyError:
print("[-] It's no a word. \n please enter a word ")
return inp()
return again()
def again():
ag = input("\n Find another word ? y(yes) or n(n) : ")
if len(ag) == 0:
print("[-] Please say y( yes ) or n ( no )")
return again()
elif ag == "y" or ag == "Y" or ag == "yes":
return inp()
elif ag == "n" or ag == "N" or ag == "no":
print(" \n {*} Thanks for using DeepDictionary")
banner.line()
else:
print("You put a wrong value \n")
return again()
if __name__ == '__main__':
inp()