How to choose secp256k1 private key?
You are confusing the concepts; the private key vs the public key. Your private key $k$ is an integer which is selected uniform randomly between $1$ to order of the base point $G$

Basepoint $G$ in compressed for
  0279BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798


The order $n$ of $G$, i.e. $[n]G = \mathcal{O}$, where $\mathcal{O}$ is point at infinity, or the identity element in additive elliptic curve group.
FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C 


Your (or any) public key is $[k]G$, which is scalar multiplication and defined as.
$$[k]G = \overbrace{G+\cdots+G}^{{k\hbox{ - }times}}$$
With add double-and-add it can be calculated very efficiently.
Your failures are due to your python coding ( that is off-topic here) where you want to recover the $y$ value from a compressed public key, not the private key. Rasmus Faber's has an answer in StackOverflow. That is the way you need to find it wiht Python.
Note: All parameters of the curve can be found on Certicom's SEC 2: Recommended Elliptic Curve Domain Parameters