SASの場合

keep q1 q22_01-q22_15 q25 q28 q33_3-q33_21;

のように落とさず持ってくる変数を連続で指定できますが、RやPythonではどのように書くのでしょうか。
SASのように一文で書きたいです。複数のデータフレームに指定してマージ、というのは避けたいです。
Rだとdplyrを用いて

select(df, q1, num_range(prefix = "q22_", range = 1:3, width = 2),q25,q28, num_range(prefix = "q33_",width=1))

でしょうか。

Pythonだと

df['q22_01':'q22_15']やdf[['q25', 'q28']]

のような書き方があるようですが混在させられず困っています。
なにか良い方法等あるでしょうか。
(そもそも前者は連番を処理してはおらず隣り合ったカラム同士を処理しているだけですが…)

どうぞよろしくお願いいたします。