Let the number of people predicted by the principal be denoted as \( P \).
According to the problem, the prediction was 20% less than the actual attendance of 150 people. This means we can express \( P \) as:
\[ P = 150 - 0.20 \times 150 \]
Calculating \( 0.20 \times 150 \):
\[ 0.20 \times 150 = 30 \]
Now substituting this back into the equation for \( P \):
\[ P = 150 - 30 \] \[ P = 120 \]
Thus, the principal predicted that \( \boxed{120} \) people would attend the carnival.