Here is one sample code, seems a little too long:
    
    extract[x_]:=Part[x,If[IntegerQ[#],{#},{Floor[#],Ceiling[#]}]&@Median[Range[Length@x]]]

Here is another, shorter. But for Even list, it only gives one value, not two. I think two values for even list is much better in some sense.

    extract[x_]:=Part[x,Quantile[Range[Length@x],1/2]]

So is there any consice code or efficient method?