How about [this answer here][1]? In the accepted answer the procedure is described in detail along with an explanation on how to interpret the final result.

**Edit:**

The main idea is to try and catch the period of the signal by performing a convolution of the function with itself, as the convolution features peaks at each multiple of the period (see also [this page][2]). 

The accepted answer is taking the data, rounding them (though it is not necessary), subtracting the mean value in order to avoid a peak of the Fourier transform and then apply the self convolution. Then one needs to adjust the plot in order to clearly see periodicity.

```
import numpy as np
import scipy.signal

from matplotlib import pyplot as plt

L = np.array([2.762, 2.762, 1.508, 2.758, 2.765, 2.765, 2.761, 1.507, 2.757, 2.757, 2.764, 2.764, 1.512, 2.76, 2.766, 2.766, 2.763, 1.51, 2.759, 2.759, 2.765, 2.765, 1.514, 2.761, 2.758, 2.758, 2.764, 1.513, 2.76, 2.76, 2.757, 2.757, 1.508, 2.763, 2.759, 2.759, 2.766, 1.517, 4.012])
L = np.round(L, 1)
# Remove DC component
L -= np.mean(L)
# Window signal
#L *= scipy.signal.windows.hann(len(L))

fft = np.fft.rfft(L, norm="ortho")

def abs2(x):
    return x.real**2 + x.imag**2

selfconvol=np.fft.irfft(abs2(fft), norm="ortho")
selfconvol=selfconvol/selfconvol[0]

# This figure does not look right as its size is not a multiple of the period
plt.figure()
plt.plot(selfconvol) 
plt.savefig('first.jpg')
plt.show()


# let's get a max, assuming a least 4 periods...
multipleofperiod=np.argmax(selfconvol[1:len(L)//4])
Ltrunk=L[0:(len(L)//multipleofperiod)*multipleofperiod]

fft = np.fft.rfft(Ltrunk, norm="ortho")
selfconvol=np.fft.irfft(abs2(fft), norm="ortho")
selfconvol=selfconvol/selfconvol[0]

plt.figure()
plt.plot(selfconvol)
plt.savefig('second.jpg')
plt.show()

```

(Code copied and pasted from the answer linked -- I have tried and look after all the issues with my version of Python, 3.10.8)

  [1]: https://stackoverflow.com/questions/49531952/find-period-of-a-signal-out-of-the-fft
  [2]: http://qingkaikong.blogspot.com/2017/01/signal-processing-finding-periodic.html