您可以取数组 log2 的上限。
import numpy as np
x = np.random.randint(0, 100, size=30)
x
# returns:
array([92, 7, 53, 24, 85, 53, 78, 52, 99, 91, 79, 40, 82, 34, 18, 26, 20,
7, 47, 38, 78, 50, 15, 12, 54, 3, 91, 82, 22, 90])
np.ceil(np.log2(x)).astype(int)
# returns:
array([7, 3, 6, 5, 7, 6, 7, 6, 7, 7, 7, 6, 7, 6, 5, 5, 5, 3, 6, 6, 7, 6,
4, 4, 6, 2, 7, 7, 5, 7])