A data type specifies the type of value that a variable, constant, or function can accept. Type annotation of variables, constants, and functions helps reduce programming errors by limiting data appropriate types. Furthermore, type annotation also produces faster, more efficient code.