TypeError là một trong số một số ngoại lệ Python tiêu chuẩn. TypeError được nâng lên bất cứ khi nào một thao tác được thực hiện trên một loại đối tượng không chính xác/không được hỗ trợ. Ví dụ: sử dụng toán tử + (bổ sung) trên một chuỗi và giá trị số nguyên sẽ tăng kiểu mẫu.TypeError is raised whenever an operation is performed on an incorrect/unsupported object type. For example, using the + (addition) operator on a string and an integer value will raise TypeError. Show
Ví dụCác nguyên nhân chung cho kiểu loại được nâng lên là: 1. Hoạt động không được hỗ trợ giữa hai loại: Trong ví dụ sau, biến ‘Geek, là một chuỗi và biến‘ num, là một số nguyên. Toán tử + (bổ sung) không thể được sử dụng giữa hai loại này và do đó kiểu mẫu được nâng lên. Python3TypeError: list indices must be integers or slices, not str1 TypeError: list indices must be integers or slices, not str2 TypeError: list indices must be integers or slices, not str3 TypeError: list indices must be integers or slices, not str4 TypeError: list indices must be integers or slices, not str2 TypeError: list indices must be integers or slices, not str6 TypeError: list indices must be integers or slices, not str7 TypeError: list indices must be integers or slices, not str8 TypeError: list indices must be integers or slices, not str9 TypeError: list indices must be integers or slices, not str4 TypeError: list indices must be integers or slices, not str9 TypeError: 'float' object is not iterable2 Đầu ra: TypeError: must be str, not int 2. Gọi một định danh không thể gọi được: Trong mã ví dụ dưới đây, biến ‘Geek, là một chuỗi và không thể gọi được trong ngữ cảnh này. Vì nó được gọi trong câu lệnh in, TypeError được nâng lên. Python3TypeError: list indices must be integers or slices, not str1 TypeError: list indices must be integers or slices, not str2 TypeError: 'float' object is not iterable5 TypeError: list indices must be integers or slices, not str7 TypeError: 'float' object is not iterable7 Đầu ra: TypeError: 'str' object is not callable 2. Gọi một định danh không thể gọi được: Trong mã ví dụ dưới đây, biến ‘Geek, là một chuỗi và không thể gọi được trong ngữ cảnh này. Vì nó được gọi trong câu lệnh in, TypeError được nâng lên. Python3TypeError: list indices must be integers or slices, not str1 TypeError: list indices must be integers or slices, not str2 TypeError: 'float' object is not iterable5 3. Loại chỉ mục danh sách không chính xác: TypeError: list indices must be integers or slices, not str7 3Đầu ra: TypeError: list indices must be integers or slices, not str 2. Gọi một định danh không thể gọi được: Trong mã ví dụ dưới đây, biến ‘Geek, là một chuỗi và không thể gọi được trong ngữ cảnh này. Vì nó được gọi trong câu lệnh in, TypeError được nâng lên. Python3TypeError: list indices must be integers or slices, not str1 TypeError: list indices must be integers or slices, not str2 TypeError: 'float' object is not iterable5 9TypeError: list indices must be integers or slices, not str7 1Đầu ra: TypeError: 'float' object is not iterable 2. Gọi một định danh không thể gọi được:Trong mã ví dụ dưới đây, biến ‘Geek, là một chuỗi và không thể gọi được trong ngữ cảnh này. Vì nó được gọi trong câu lệnh in, TypeError được nâng lên. Python3TypeError: list indices must be integers or slices, not str1 TypeError: list indices must be integers or slices, not str2 TypeError: 'float' object is not iterable5 3. Loại chỉ mục danh sách không chính xác: Trong Python, các chỉ số danh sách phải luôn là một giá trị số nguyên. Vì giá trị chỉ mục được sử dụng trong mã sau là một chuỗi, nó tăng cách loại. 9 2 8 4TypeError: list indices must be integers or slices, not str7 6TypeError: 'float' object is not iterable8 TypeError: list indices must be integers or slices, not str2 Geeky GeeksforGeeks TypeError: Check list of indices Geek0 Geeky GeeksforGeeks TypeError: Check list of indices Geek1 Geeky GeeksforGeeks TypeError: Check list of indices Geek2 TypeError: 'float' object is not iterable5 Geeky GeeksforGeeks TypeError: Check list of indices Geek2 Geeky GeeksforGeeks TypeError: Check list of indices Geek5 Geeky GeeksforGeeks TypeError: Check list of indices Geek2 Geeky GeeksforGeeks TypeError: Check list of indices Geek7 Geeky GeeksforGeeks TypeError: Check list of indices Geek8 4TypeError: list indices must be integers or slices, not str7 8TypeError: 'str' object is not callable03 TypeError: 'str' object is not callable04 Đầu ra: Geeky GeeksforGeeks TypeError: Check list of indices Geek Bạn đã bao giờ cố gắng chia một số nguyên với một chuỗi trong khi lập trình bằng Python chưa? Nếu có, bạn có thể có một thông báo lỗi như loại Kiểu mẫu: Loại toán hạng không được hỗ trợ cho /: ‘int, và‘ str hồi. & NBSP; Trong bài viết này, chúng tôi sẽ thảo luận về ngoại lệ kiểu loại này trong Python. Chúng tôi cũng sẽ xem xét các tình huống khác nhau khi một ngoại lệ loại có thể xảy ra và cách chúng tôi có thể tránh chúng. & NBSP; Kinderror trong Python là gì?TypeError là một ngoại lệ trong ngôn ngữ lập trình Python xảy ra khi loại dữ liệu của các đối tượng trong hoạt động là không phù hợp. Ví dụ: nếu bạn cố gắng chia số nguyên với một chuỗi, các loại dữ liệu của số nguyên và đối tượng chuỗi sẽ không tương thích. Do điều này, & nbsp; Trình thông dịch Python sẽ tăng một ngoại lệ kiểu loại như trong ví dụ sau.
Output:
Chúng ta hãy lấy một ví dụ khác, giả sử rằng chúng ta muốn kết hợp hai danh sách. Chúng ta có thể làm điều đó bằng cách sử dụng toán tử + như sau.
Output:
Bây giờ giả sử rằng chúng ta vượt qua một tuple ở vị trí của danh sách thứ hai. Ở đây, các loại dữ liệu liệt kê và tuple không tương thích với nhau trong toán tử nối. Vì vậy, trình thông dịch Python sẽ tăng một ngoại lệ kiểu loại như hình dưới đây.
Output: TypeError: 'str' object is not callable0 Nhìn vào các ví dụ này, chúng ta có thể nói rằng typeerror là một ngoại lệ được trình thông dịch Python nêu ra nếu các loại dữ liệu của các đối tượng khác nhau trong một hoạt động không tương thích và do đó không phù hợp. Bây giờ chúng ta hãy xem xét một số tình huống mà các trường hợp ngoại lệ của Kiểu có khả năng xảy ra. Khi nào một ngoại lệ kiểu loại xảy ra trong Python?Ngoại lệ buộc chương trình chấm dứt sớm. Ngoài ra, không ai muốn các trường hợp ngoại lệ xảy ra trong các chương trình của họ. Nhưng, chúng tôi không thể kiểm soát cách người dùng sẽ chuyển đầu vào cho chương trình. Có thể có nhiều tình huống khác nhau trong đó các trường hợp ngoại lệ của kiểu loại có thể xảy ra. & NBSP; Hãy để có một cái nhìn vào một số trong số họ. Các trường hợp ngoại lệ của Kiểu có thể xảy ra trong khi sử dụng các chức năng được xây dựngTất cả các chức năng tích hợp chấp nhận các đối số đầu vào của một số loại nhất định. Ví dụ: phương thức add () trong một tập chỉ chấp nhận các đối tượng bất biến như số nguyên, chuỗi, bộ dữ liệu, số điểm nổi, vv & nbsp; như các đối số đầu vào. & nbsp; Nếu chúng ta cố gắng cung cấp một đối tượng có thể thay đổi như một danh sách làm đầu vào cho phương thức add (), nó sẽ tăng kiểu mẫu với một thông báo kiểu kiểu: Loại không thể không thể tin được: ’Danh sách Hồi giáo như sau. TypeError: 'str' object is not callable1 Output: TypeError: 'str' object is not callable2 Các ngoại lệ kiểu loại có thể xảy ra trong khi thực hiện các hoạt động giữa hai loại dữ liệu không tương thích.Chúng tôi biết rằng các hoạt động toán học hoặc bitwise chỉ được xác định cho một số loại dữ liệu nhất định trong Python. Ví dụ: chúng ta có thể thêm một số nguyên vào số nguyên hoặc số dấu phẩy động. Mặt khác, chúng ta không thể thêm một đối tượng chuỗi vào một số nguyên. Thêm một số nguyên vào một đối tượng chuỗi sẽ gây ra kiểu mẫu với một thông báo Kiểu kiểu: Loại toán hạng không được hỗ trợ cho +: ‘int, và‘ str, như sau. TypeError: 'str' object is not callable3 Output: TypeError: 'str' object is not callable4 Tương tự như vậy, tất cả các hoạt động toán học chỉ được phép giữa các loại dữ liệu nhất định. Nếu bạn cố gắng thực hiện một thao tác toán học trên các đối tượng có các loại dữ liệu không tương thích, kiểu mẫu sẽ xảy ra. Nếu chúng ta nói về các hoạt động bitwise, chúng ta có thể thực hiện thao tác bitwise trên một số nguyên nhưng không phải trên một chuỗi. Ví dụ, chúng ta có thể thay đổi một số nguyên theo hai bit như sau. TypeError: 'str' object is not callable5 Output: TypeError: 'str' object is not callable6 Mặt khác, nếu chúng ta cố gắng thực hiện thao tác dịch chuyển đúng trên một chuỗi, nó sẽ tăng kiểu mẫu với một thông báo kiểu kiểu mẫu: Loại toán hạng không được hỗ trợ cho >>: ’str, và‘ int. như sau. TypeError: 'str' object is not callable7 Output: TypeError: 'str' object is not callable8 Vì vậy, bạn có thể thấy rằng việc thực hiện các hoạt động toán học hoặc bitwise trên các loại dữ liệu không tương thích có thể gây ra ngoại lệ kiểu loại trong chương trình của bạn. Các trường hợp ngoại lệ của Kiểu có thể xảy ra trong khi gọi một đối tượng không thể gọi đượcTrong Python, các hàm, phương thức và tất cả các đối tượng với việc thực hiện phương thức __call __ () trong định nghĩa lớp của chúng là có thể gọi được. Chúng ta có thể gọi bất kỳ đối tượng nào có thể gọi được khi chúng ta gọi một hàm hoặc một phương thức. Mặt khác, nếu chúng ta gọi một đối tượng không thể gọi, chẳng hạn như số nguyên, nó sẽ tăng một ngoại lệ kiểu kiểu với một thông báo Kiểu kiểu: ‘Int đối tượng không thể gọi được như sau. TypeError: 'str' object is not callable9 Output: TypeError: list indices must be integers or slices, not str0 Làm thế nào để tránh các trường hợp ngoại lệ trong Python?Lỗi là không thể tránh khỏi trong một chương trình. Nhưng, bạn luôn có thể giảm thiểu sự xuất hiện của các lỗi. Để giảm thiểu các ngoại lệ kiểu mẫu, bạn có thể sử dụng các hướng dẫn sau.
Sự kết luậnTrong bài viết này, chúng tôi đã thảo luận về ngoại lệ kiểu loại, nguyên nhân của nó và làm thế nào chúng tôi có thể tránh chúng. Bạn cũng có thể xử lý các ngoại lệ này bằng cách sử dụng Python, hãy thử ngoại trừ các khối. Nhưng, tôi sẽ khuyên bạn nên tránh ngoại lệ thay vì xử lý nó sau khi nó xảy ra. & NBSP; Khuyến nghị đào tạo PythonKhóa học: Python 3 cho người mới bắt đầu Hơn 15 giờ nội dung video với hướng dẫn hướng dẫn cho người mới bắt đầu. Tìm hiểu làm thế nào để tạo các ứng dụng trong thế giới thực và làm chủ những điều cơ bản. Loại lỗi có nghĩa là gì?Đối tượng kiểu mẫu biểu thị lỗi khi không thể thực hiện thao tác, thông thường (nhưng không chỉ riêng) khi giá trị không thuộc loại dự kiến.Một kiểu mẫu có thể được ném khi: một toán hạng hoặc đối số được truyền cho một hàm không tương thích với loại được mong đợi bởi toán tử hoặc chức năng đó;hoặc.an error when an operation could not be performed, typically (but not exclusively) when a value is not of the expected type. A TypeError may be thrown when: an operand or argument passed to a function is incompatible with the type expected by that operator or function; or.
3 lỗi trong Python là gì?Có ba loại lỗi cơ bản mà các lập trình viên cần phải quan tâm: lỗi cú pháp, lỗi thời gian chạy và lỗi logic.Syntax errors, runtime errors, and Logical errors. |