ใน Python ตัวแปรไม่มีการระบุชนิดข้อมูลโดยตรง (dynamically typed) Python จะอนุมานชนิดข้อมูลโดยอัตโนมัติ แตกต่างจากภาษา statically-typed เช่น Java หรือ C++ ที่ต้องประกาศชนิดข้อมูล
แม้จะใช้ Type Hints (PEP 484) ก็ตาม การทำงานของโปรแกรมจะไม่เปลี่ยนแปลง เพราะ Python ไม่บังคับชนิดข้อมูลขณะรันไทม์ (runtime)
ตัวอย่าง
def addSum(x: float, y: float) -> float:
return x + y
print(addSum(2.2, 5.6)) # 7.8
print(addSum(float(2.2), float(5.6))) # 7.8
ผลลัพธ์
7.8 7.8
การประกาศชนิดข้อมูล (type hints) เพียงช่วยให้เครื่องมือ static analysis ทำงานได้ดีขึ้น แต่ไม่มีผลต่อการทำงานของโปรแกรม