Confused with convolutions in scipy
I do not know what convolve.convolve does but the output of signal.convolve is the linear convolution (as opposed to circular convolution) of the two sequences. And since you supplied 'same', the output has the same size as the first input vector, and the samples are taken from the center of the complete output.

The circular convolution is indeed

34   32   34   40

and the linear convolution is

5   14   26   40   29   18    8

from which you obtained samples 2 to 5 (by using the mode 'same').