Я пытаюсь присвоить значение переменной из словаря, но не могу этого сделать.
Я пробовал:
self.currency = inflationcurrency[self.currency]
self.currency = inflationcurrency.get([self.currency])
вверху я попытался объявить self.currency как
self.currency = ''.join(self.tempholder[0])
Это код:
import string
datatype = "Inflation SABR Vol ATM ZC"
dataconvention = "UK-RPI-ZERO-COUPON-SWAP-RATE"
mdlname = "INFLATION_SABR"
t1 = 'should-send-back-none'
class srtqualifier:
def __init__(self,mdlname,datatype, dataconvention,t1):
self.mdlname = mdlname
self.datatype = datatype
self.dataconvention = dataconvention
self.t1 = t1 ##TO BE REMOVED, ONLY USE FOR TESTING##
self.tempholder = self.dataconvention.split("-")
self.currency = self.tempholder[0]
def curr(self):
if self.mdlname == "INFLATION_SABR":
inflationcurrency = {'UK':'GBP','FR':'EUR','EU':'EUR','US':'USD'}
self.currency = inflationcurrency.get(self.currency)
else:
return self.currency
def makequalifier(self):
qualifier = string.join([self.currency,"|",self.spartSABR(),"|",self.modelname(),"|",self.dttype(),"|",self.lastpart()])
return qualifier
test1 = srtqualifier(mdlname,datatype,dataconvention,t1)
print(test1.makequalifier())
Ошибка в приведенной выше ожидаемой строке, но полученная Nonetype от self.currency
Я не получаю ничего, когда делаю ниже.
print (test1.currency())