Chúng ta sử dụng * args khi chúng ta không chắc chắn có bao nhiêu đối số sẽ được chuyển đến một hàm hoặc nếu chúng ta muốn chuyển một danh sách được lưu trữ hoặc một bộ đối số đến một hàm.
** kwargs được sử dụng khi chúng ta không biết có bao nhiêu đối số từ khóa sẽ được chuyển đến một hàm hoặc nó có thể được sử dụng để chuyển các giá trị của từ điển làm đối số từ khóa.
Các định danh args và kwarg là một quy ước, bạn cũng có thể sử dụng * bob và ** billy nhưng điều đó sẽ không khôn ngoan.