Generalise a bit more than that.
An assignment statement has a name on the left side of
= and an expression on the right side.
The expression is evaluated and the name is assigned to the result.
A function call is an expression.
An expression is something that evaluates to a value, for example 5 is an expression because it evaluates to 5 (itself), and 5 + 5 is an expression, it evaluates to 10. Names are expressions, a name evaluates to the value it refers to. More complicated expressions consist of several subexpressions (like 5 and 3 in 5 + 3)
…Otherwise you’ll be memorizing fifty different versions of the same thing
In contrast, a statement has no result. You can for example not assign a name to a for-loop, because a for-loop has no result, it’s not an expression.