Lỗi tên trong ví dụ python

NameErrors là một trong những loại lỗi Python phổ biến nhất. Để làm rõ, khi bạn mới bắt đầu, những lỗi này có vẻ đáng sợ. Nhưng, chúng không quá phức tạp. NameError có nghĩa là bạn đã cố gắng sử dụng một biến chưa tồn tại. Trong hướng dẫn này, dựa trên các tài liệu từ Career Karma, chúng ta sẽ nói về lỗi tên hàm trong Python không được xác định tên hàm, tại sao nó lại xuất hiện và cách giải quyết nó

NameError là gì?

Lỗi Tên xuất hiện khi bạn cố gắng sử dụng tên biến hoặc hàm không hợp lệ

Trong Python, mã chạy từ trên xuống dưới. Điều này có nghĩa là bạn không thể khai báo biến sau khi cố gắng sử dụng biến đó trong mã của mình. Python sẽ không biết bạn muốn biến đó làm gì

Lỗi tên Python phổ biến nhất tên hàm không được xác định trông như thế này

1 nameerror name is not defined

>>> Đọc thêm

  • Đổi tên tệp bằng Python. Làm thế nào để thực hiện nó với các ví dụ
  • So sánh chuỗi Python. Từng bước để so sánh các chuỗi trong Python

Cùng phân tích một vài nguyên nhân gây ra lỗi name error trong Python name is notdefined function

1. Tên biến hoặc hàm viết sai chính tả

Con người dễ dàng che đậy lỗi chính tả. Để làm rõ, chúng ta có thể dễ dàng biết một từ được cho là gì ngay cả khi nó sai chính tả. Python không có khả năng này

Ngoài ra, Python chỉ có thể diễn giải các tên mà bạn đã viết đúng chính tả. Vì khi bạn khai báo một biến hay một hàm thì Python sẽ lưu giá trị đúng với tên mà bạn đã khai báo

Nếu có lỗi đánh máy ở bất kỳ đâu mà bạn cố gắng tham chiếu đến biến đó, sẽ xảy ra lỗi. Hàm tên lỗi tên Python không được xác định sẽ được trả về. Vì vậy, hãy xem xét đoạn mã sau

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
1 Traceback [most recent call last]:
2 File "main.py", line 3, in 
3 print[boooks]
4 NameError: name 'boooks' is not defined

Để giải quyết vấn đề này, tất cả những gì chúng ta phải làm là sửa lỗi đánh máy. Nếu chúng ta sử dụng “print[books]”, mã của chúng ta sẽ trả về

1 ["Near Dark", "The Order", "Where the Crawdads Sing"]

Nếu bạn gặp lỗi tên, trước tiên bạn nên kiểm tra để đảm bảo rằng bạn đã viết đúng tên biến hoặc tên hàm

2. Gọi một hàm trước khi khai báo – Python nameerror tên hàm không được xác định

Các chức năng phải được khai báo trước khi chúng được sử dụng, giống như các biến. Điều này là do Python đọc mã từ trên xuống dưới.  

Hãy viết một chương trình gọi một hàm trước khi nó được khai báo

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print_books[books]
4
5 def print_books[books]:
6   for b in books:
7       print[b]

Mã trả về

1 Traceback [most recent call last]:
2 File "main.py", line 3, in 
3   print_books[books]
4 NameError: name 'print_books' is not defined

Chúng tôi đang cố gắng gọi print_books[] trên dòng ba. Tuy nhiên, chúng tôi không xác định chức năng này cho đến sau này trong chương trình của chúng tôi. Để khắc phục lỗi này chúng ta có thể di chuyển phần khai báo hàm đến một nơi trước khi sử dụng

1 def print_books[books]:
2   for b in books:
3       print[b]
4
5 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
6
7 print_books[books]

Mã trả về

1 Near Dark
2 The Order
3 Where the Crawdads Sing

Mã đã in danh sách sách thành công

3. tên lỗi tên Python không được xác định chức năng. Quên định nghĩa một biến

Khi các chương trình trở nên lớn hơn, rất dễ quên định nghĩa một biến. Nếu bạn làm như vậy, một lỗi tên sẽ được đưa ra. Điều này là do Python không thể làm việc với các biến cho đến khi chúng được khai báo

Hãy cùng xem một chương trình in ra một danh sách các cuốn sách

________số 8

mã trả về.  

1 Traceback [most recent call last]:
2  File "main.py", line 1, in 
3    for b in books:
4 NameError: name 'books' is not defined

Chúng tôi chưa khai báo biến có tên là “books”. Để giải quyết vấn đề này, chúng ta cần khai báo “books” trước khi sử dụng nó trong code của mình

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
0

Hãy thử chạy lại chương trình của chúng ta và xem điều gì sẽ xảy ra

1 Near Dark
2 The Order
3 Where the Crawdads Sing

Bây giờ chúng ta đã xác định danh sách sách, Python có thể in ra từng cuốn sách từ danh sách

4. Thử in một từ – Chức năng không được xác định python

Để in ra một từ trong Python, bạn cần đặt nó trong dấu ngoặc đơn hoặc dấu ngoặc kép. Điều này nói với Python rằng một từ là một chuỗi. Nếu một từ không được bao quanh bởi dấu ngoặc kép, nó được coi là một phần của chương trình. Xem xét câu lệnh print[] sau

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
2

Mã này cố gắng in từ “Sách” ra bảng điều khiển. Mã trả về một lỗi

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
3

Python coi “Sách” như một tên biến. Để giải quyết lỗi này. Tên lỗi tên hàm Python không được xác định, chúng ta có thể đặt từ “Sách” trong dấu ngoặc kép

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
4

Bây giờ Python biết rằng chúng ta muốn in ra một chuỗi ra bàn điều khiển

Mã mới trả về. Sách

5. Khai báo một biến ngoài phạm vi

Có hai phạm vi biến. địa phương và toàn cầu

Các biến cục bộ chỉ có thể truy cập được trong hàm hoặc lớp mà chúng được khai báo. Các biến toàn cầu có thể truy cập được trong suốt một chương trình

Nếu bạn cố gắng truy cập một biến cục bộ bên ngoài phạm vi mà nó được xác định, sẽ xảy ra lỗi

Đoạn mã sau sẽ in ra một danh sách các cuốn sách theo sau là số lượng sách trong danh sách

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
5

Mã trả về

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
6

Mã của chúng tôi in thành công danh sách sách. Trên dòng cuối cùng của mã của chúng tôi, một lỗi được trả về. Mặc dù chúng ta đã khai báo biến “books”, chúng ta chỉ khai báo nó bên trong hàm print_books[]. Điều này có nghĩa là biến không thể truy cập được đối với phần còn lại của chương trình của chúng tôi

Để giải quyết vấn đề này, chúng ta có thể khai báo sách trong chương trình chính của mình. Điều này sẽ biến nó thành một biến toàn cầu

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
7

mã của chúng tôi trả về

1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
8
1 books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
2
3 print[boooks]


The code returns:
9

Để tính tổng với hàm không được xác định Python

Tóm lại, những lỗi này có vẻ đáng sợ. Nhưng, chúng không quá phức tạp. Vì vậy, chúng tôi hy vọng bài viết này về hàm nameerror trong Python không được xác định hàm sẽ giúp ích cho bạn. Bình luận suy nghĩ của bạn dưới đây hoặc liên hệ với chúng tôi ngay bây giờ

thẻ

  • ArrowHitech, Nameerror tên không được xác định Python, python, học python, chuỗi python, khung phát triển web cho Thương mại điện tử, phát triển trang web/ứng dụng di động

    3 loại lỗi trong Python là gì?

    Có ba loại lỗi chính có thể phân biệt được trong Python. lỗi cú pháp, ngoại lệ và lỗi logic .

    Ví dụ về lỗi loại trong Python là gì?

    TypeError là một loại lỗi mà python tạo ra. Chúng tôi đang cố gắng thực hiện thao tác với loại đối tượng không đúng . Ví dụ: nếu chúng tôi đang cố gắng thực hiện căn bậc hai của một số nhưng chúng tôi đang chuyển một danh sách thay vì int, thì TypeError sẽ được tạo bởi python.

    Lỗi tên có phải là lỗi cú pháp không?

    Xảy ra lỗi cú pháp khi lập trình viên viết sai dòng mã . Hầu hết các lỗi cú pháp đều liên quan đến việc thiếu dấu chấm câu hoặc tên sai chính tả. Nếu có lỗi cú pháp trong ngôn ngữ lập trình được biên dịch hoặc giải thích thì mã sẽ không hoạt động.

    Các loại lỗi cú pháp trong Python là gì?

    Các lỗi cú pháp phổ biến của Python bao gồm. bỏ qua từ khóa . đặt từ khóa sai chỗ. bỏ đi một ký hiệu, chẳng hạn như dấu hai chấm, dấu phẩy hoặc dấu ngoặc.

Chủ Đề