python调用自己写的函数文件(入门)
@python调用自己写的函数(入门)python调用自己写的函数(入门)入手Python一个月了才发现写程序还是一个程序写完所有的功能,想要写几个函数包,在每个程序里都可以调用这些程序。我的函数编写函数包先做了个简单的快速傅里叶变换函数:import numpy as npfrom scipy.fft import fftdef my_fft(x,t):fft_x = fft(x)#f
·
@python调用自己写的函数文件(入门)
python调用自己写的函数文件(入门)
入手Python一个月了才发现写程序还是一个程序写完所有的功能,想要写几个函数包,在每个程序里都可以调用这些程序。
我的函数
- 编写函数包
先做了个简单的快速傅里叶变换函数:
# 导入需要用到的库文件
import numpy as np
from scipy.fft import fft
# FFT函数
def my_fft(x,t):
fft_x = fft(x) # fft计算
amp_x = 2*abs(fft_x)/len(x) # 纵坐标变换
label_x = np.linspace(0,int(len(x)/2)-1,int(len(x)/2)) # 生成频率坐标
amp = amp_x[0:int(len(x)/2)] # 选取前半段计算结果即可
# amp[0] = 0
fs =1/( t[2]-t[1]) # 计算采样频率
fre = label_x/len(x)*fs # 频率坐标变换
pha = np.unwrap(np.angle(fft_x)) # 计算相位角并去除2pi跃变
return amp,fre,pha # 返回幅度和频率
# 其他函数1
# 其他函数2
-
存成.py格式放到你想放到的文件夹中
然后把这个文件命名为my_function.py放到路径‘E:\python\pythonProject’里面去。
-
调用我的函数
需要用到sys函数库。。
import sys
import numpy as np
import matplotlib.pyplot as plt
sys.path.append(r'E:\python\pythonProject') # 添加函数文件位置
import my_function # 导入函数文件
t = np.linspace(0,2*np.pi,1000) # 时间坐标函数
s = np.sin(5*2*np.pi*t) # 正弦函数
plt.figure() # 绘图
plt.plot(t,s)
amp,fre,pha = my_function.my_fft(s, t) # 调用my_function文件里一个名为my_fft的函数
plt.figure() # 绘图
plt.plot(fre,amp)
plt.show() # 显示绘图
处理结果展示
首先是生成的正弦曲线
然后是调用函数处理得到的结果
跟我设置的5Hz的正弦曲线的幅值和频率完全一致!
调用成功
更多推荐
已为社区贡献3条内容
所有评论(0)