```python
class optionPrice:
def _init_(self,flag,S0,K,r,T,sigma):
import numpy as np
if flag not in ['call','put','c','p']:
print('Choose one of call/put/c/p to be flag!' )
self.flag = 1 if (flag == 'call' or flag == 'c')
else -1
self.S0 = float(S0)
self.K = float(K)
self.r = float(r)
self.T = float(T)
self.sigma = float(sigma)
self.d1 = (np.log(self.S0/self.K)+(self.r+self.sigma**2/2)*self.T)/(self.sigma*np.sqrt(self.T))
self.d2 = self.d1-self.sigma*np.sqrt(self.T)
def bsmPrice(self,dec=-1):
import numpy as np
import scipy.stats as ss
result = self.flag*self.S0*ss.norm,cdf(self.flag*self.d1)-self.flag*self.K*np.exp(-self.r*self.T)*ss.norm.cdf(self.flag*self.d2)
if int(dec)>0:
return round(result,int(dec))
else:
return result
这第六行代码报错说无效语法,谁能帮忙更改解答呀 self.flag = 1 if (flag == 'call' or flag == 'c')
else -1
确少:
语法错误:修改为:
if (flag == 'call' or flag == 'c'):
print('ssss')
else:
print('ssa')
不知道你这个问题是否已经解决, 如果还没有解决的话: