Я новичок и пытаюсь изучить метод класса в Python.У меня есть два словаря:
d = {
"day_rate":None,
"hourly_rate": 50,
"Comp_ID":[482,483],
"availability":"",
"page": 1
}
ans = {
"hourly_rate": "50",
"day_rate":None,
"available": "Available Immediately",
"competencies": "485,483,488"
}
Теперь я хочу вставить эти два словаря в класс python и использовать их ключи в функции класса.Я попытался простым способом, как я просто вставил dict и попытался использовать напрямую.Мой подход заключается в следующем:
class employer_search(object):
def __init__(self,ans,d):
self.ans = ans
self.d = d
print(ans)
print(d)
def Competency_scoring(self):
if self.ans['competencies'] is not None:
Job_comp = []
for i in (self.ans['competencies'].split(",")):
Job_comp.append(int(i))
h = []
for j in self.d['Comp_ID']:
for i in Job_comp:
if j == i:
a = i
h.append(a)
matched_comp = []
final_result = []
q = [[x,h.count(x)] for x in set(h)]
print(len(q))
if len(q) == 1:
comp_score = 0.25
elif len(q) == 2:
comp_score = 0.50
elif len(q) == 3:
comp_score = 0.75
elif len(q) >= 4:
comp_Score = 1.0
return(comp_score)
else:
return(0)
тогда я сделал
es = employer_search(d,ans)
es.Competency_scoring()
, это дает мне keyerror of dict key.Ошибка заключается в следующем:
KeyError: 'competencies'
Я пытался исправить имя ключа, но он продолжает выдавать ошибку.Кто-нибудь может помочь мне, как использовать словарные ключи в классе Python?
Заранее спасибо.