with open(r"C:\Users\xuj06\Desktop\record_data.txt") as f:
data = f.readlines()
signal = []
for i in range(len(data)):
x, y = data[i].trim().split()
x, y = float(x), float(y)
if y > 100:
x1, y1 = data[i-1].trim().split()
x1, y1 = float(x1), float(y1)
x2, y2 = data[i+1].trim().split()
x2, y2 = float(x2), float(y2)
y = y1 + (y2-y1)/(x2-x1)*0.01
signal.append((x,y))
print('坐标','\t函数值','\t\t拐点左值','\t\t拐点右值')
for i in range(2,len(signal)-1):
xaa,yaa = signal[i-2]
xa,ya = signal[i-1]
x0,y0 = signal[i]
xb,yb = signal[i+1]
ffa = (y0+yaa-2*ya)/(0.01*0.01)
ffb = (yb+ya-2*y0)/(0.01*0.01)
if ffa*ffb < 0:
print(x0,y0,ffa,ffb, sep='\t')
|