Python
File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
2 là một ngoại lệ xảy ra khi kiểu dữ liệu của một đối tượng trong một hoạt động không phù hợp. Điều này có thể xảy ra khi một thao tác được thực hiện trên một đối tượng thuộc loại không chính xác hoặc nó không được hỗ trợ cho đối tượng. Ví dụ: nếu một chuỗi được cố gắng nhân với một số nguyên, thì một File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
2 sẽ được tạoNguyên nhân gây ra TypeError
Một số nguyên nhân phổ biến nhất gây ra
File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
2 trong Python là- Thực hiện thao tác giữa hai loại dữ liệu không tương thích e. g. thêm một chuỗi và một số nguyên
- Truyền loại không chính xác cho hàm tích hợp e. g. chuyển một danh sách tới hàm
5 tích hợpFile "test.py", line 3, in my_result = my_integer + my_string TypeError: unsupported operand type[s] for +: 'int' and 'str'
- Gọi một đối tượng không thể gọi được e. g. gọi một số nguyên
- Loại chỉ mục danh sách không chính xác e. g. sử dụng một chuỗi làm giá trị chỉ mục danh sách thay vì một số nguyên
- Lặp lại trên một giá trị không lặp lại e. g. cố gắng lặp trên một số nguyên
Ví dụ về lỗi loại Python
Đây là một ví dụ về Python
File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
2 bị ném khi cố gắng thêm một chuỗi và một số nguyênmy_integer = 1
my_string = "Hello World"
my_result = my_integer + my_string
Trong ví dụ trên, chuỗi
File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
7 được cố gắng thêm vào một số nguyên File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
0. Vì không thể thực hiện phép cộng giữa hai loại này, nên một File "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
2 được nâng lênFile "test.py", line 3, in
my_result = my_integer + my_string
TypeError: unsupported operand type[s] for +: 'int' and 'str'
Cách sửa TypeError trong Python
Để tránh lỗi kiểu trong Python, cần kiểm tra kiểu của đối tượng trước khi thực hiện thao tác. Điều này có thể giúp đảm bảo rằng loại đối tượng phù hợp với thao tác và liệu thao tác có được đối tượng hỗ trợ hay không
Nếu loại hoạt động không được hỗ trợ hoặc nếu loại không phù hợp với hoạt động, một thông báo có thể được hiển thị để chuyển loại phù hợp
Sử dụng cách tiếp cận trên, một kiểm tra có thể được thêm vào ví dụ trước đó
my_integer = 1
my_string = "Hello World"
if[type[my_integer] != int or type[my_string] != int]:
print['One of the variables is not an integer']
else:
my_result = my_integer + my_string
Tại đây, một kiểm tra được thực hiện để đảm bảo rằng cả hai biến cố gắng thêm vào đều là số nguyên. Nếu một trong số chúng không phải là số nguyên, một thông báo sẽ được hiển thị và tránh được lỗi
One of the variables is not an integer
Theo dõi, phân tích và quản lý lỗi với Rollbar
Quản lý lỗi và ngoại lệ trong mã của bạn là một thách thức. Nó có thể làm cho việc triển khai mã sản xuất trở thành một trải nghiệm đáng sợ. Khả năng theo dõi, phân tích và quản lý lỗi trong thời gian thực có thể giúp bạn tiến hành một cách tự tin hơn. Rollbar tự động theo dõi và xử lý lỗi, giúp việc sửa lỗi Python trở nên dễ dàng hơn bao giờ hết. Thử nó ngay hôm nay
Lỗi cú pháp là loại lỗi cơ bản nhất. Chúng phát sinh khi trình phân tích cú pháp Python không thể hiểu một dòng mã. Lỗi cú pháp hầu như luôn luôn nghiêm trọng, tôi. e. hầu như không bao giờ có cách nào để thực thi thành công một đoạn mã chứa lỗi cú pháp. Một số lỗi cú pháp có thể được phát hiện và xử lý, chẳng hạn như eval[""], nhưng những lỗi này rất hiếm
Trong IDLE, nó sẽ làm nổi bật lỗi cú pháp ở đâu. Hầu hết các lỗi cú pháp là lỗi chính tả, thụt lề không chính xác hoặc đối số không chính xác. Nếu bạn gặp lỗi này, hãy thử xem mã của bạn để biết bất kỳ lỗi nào trong số này
Đây là loại lỗi khó tìm nhất, bởi vì chúng sẽ cho kết quả không thể đoán trước và có thể làm hỏng chương trình của bạn. Rất nhiều điều khác nhau có thể xảy ra nếu bạn mắc lỗi logic. Tuy nhiên, những điều này rất dễ khắc phục vì bạn có thể sử dụng trình gỡ lỗi, trình gỡ lỗi này sẽ chạy qua chương trình và khắc phục mọi sự cố
Một ví dụ đơn giản về lỗi logic có thể được trình bày bên dưới, vòng lặp while sẽ biên dịch và chạy, tuy nhiên, vòng lặp sẽ không bao giờ kết thúc và có thể làm hỏng Python
#Counting Sheep #Goal: Print number of sheep up until 101. sheep_count=1 while sheep_count