|
发表于 2018-4-27 10:44:03
|
显示全部楼层
本楼为最佳答案
- 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')
复制代码
|
|