Hướng dẫn python del variable if exists - biến python del nếu tồn tại
I try doing: Show
This works fine but it returns a syntax warning:
I am just wondering if there is a way to do this without the syntax warning.
Taku 29.9k11 gold badges69 silver badges81 bronze badges asked Jun 10, 2017 at 19:28
3 Use the 0 keyword
answered Jun 10, 2017 at 19:32
7 You should use the 1 key word when declaring the variable 2:
answered Jun 10, 2017 at 19:35
MMFMMF 5,5823 gold badges15 silver badges19 bronze badges 0 Kiểm tra nếu một biến được xác địnhTín dụng: Hamish Lawson Vấn đềBạn muốn thực hiện các khóa học hành động khác nhau dựa trên việc một biến có được xác định hay không. Dung dịchTrong Python, tất cả các biến dự kiến sẽ được xác định trước khi sử dụng. Đối tượng 3 là một giá trị bạn thường gán để biểu thị rằng bạn không có giá trị thực cho một biến, như trong:try: x except NameError: x = None Sau đó, nó dễ dàng kiểm tra xem một biến có bị ràng buộc với 3:if x is None: some_fallback_operation( ) else: some_operation(x) Thảo luậnPython không có chức năng cụ thể để kiểm tra xem một biến có được xác định hay không, vì tất cả các biến dự kiến đã được xác định trước khi sử dụng, ngay cả khi ban đầu được gán cho đối tượng 3. Cố gắng truy cập vào một biến đã được xác định trước đây sẽ tăng ngoại lệ 6 (mà bạn có thể xử lý với câu lệnh ________ 17/________ 18, vì bạn có thể cho bất kỳ ngoại lệ Python nào khác).Nó được coi là bất thường trong Python không biết liệu một biến đã được xác định. Nhưng nếu bạn vẫn còn trong tình huống này, bạn có thể đảm bảo rằng một biến nhất định trên thực tế được xác định (là 3, nếu không có gì khác) bằng cách cố gắng truy cập nó trong một điều khoản 7 và gán cho nó đối tượng 3 nếu truy cập tăng 6 ngoại lệ. Lưu ý rằng 3 thực sự không có gì kỳ diệu, chỉ là một đối tượng tích hợp được sử dụng bởi quy ước (và được trả về bởi các chức năng thoát mà không trả lại bất cứ điều gì cụ thể). Bạn có thể sử dụng bất kỳ giá trị nào khác phù hợp cho mục đích của mình để khởi tạo các biến không xác định; Để biết ví dụ mạnh mẽ và thú vị, xem Công thức 5.24.Thay vì đảm bảo rằng một biến được khởi tạo, bạn có thể thích kiểm tra xem nó có được xác định ở nơi bạn muốn sử dụng không: try: x except NameError: some_fallback_operation( ) else: some_operation(x) Đây là một sự thay thế hoàn toàn có thể chấp nhận được cho mã trong công thức, và một số người sẽ nói rằng nó có nhiều pythonic hơn. Tuy nhiên, lưu ý rằng nếu bạn chọn giải pháp thay thế này, bạn phải viết mã theo thứ tự này: trường hợp dị thường, lỗi trước, thì trường hợp bình thường, không lỗi. Với cách tiếp cận công thức, bạn có thể muốn đảo ngược điều kiện bảo vệ thành 4 và mã hóa trường hợp bình thường trước. Những điểm này là minutiae, để chắc chắn, nhưng đôi khi sự rõ ràng có thể được cải thiện theo cách này. Hơn nữa, bạn phải cẩn thận để tránh sự thay đổi trong phương án này:try: x some_operation(x) except NameError: some_fallback_operation( ) Trong biến thể này, cuộc gọi đến 5 cũng được bao phủ bởi trình xử lý ngoại lệ, vì vậy nếu có lỗi trong hàm 5 hoặc trong bất kỳ chức năng nào được gọi từ nó, mã này sẽ che dấu lỗi và dường như tiến hành hoạt động bình thường khi nó nên thất bại với một thông báo lỗi. Bạn phải luôn cẩn thận rằng các điều khoản 7 của bạn (trong ________ 17/________ 18 tuyên bố) Không vô tình bao gồm nhiều mã hơn bạn thực sự có ý định bao gồm, điều này có thể dễ dàng che dấu lỗi. Điều khoản 0 trong câu lệnh ________ 17/________ 18 dành cho mã chỉ nên thực thi nếu không có ngoại lệ nào được nêu ra nhưng không nên được xử lý bởi người xử lý ngoại lệ, vì bạn không mong đợi các ngoại lệ từ nó và muốn chẩn đoán vấn đề ngay lập tức nếu các ngoại lệ xảy ra.Nhiều tình huống mà bạn có thể nghĩ sẽ tự nhiên làm phát sinh các biến không xác định, chẳng hạn như xử lý các tệp cấu hình hoặc biểu mẫu web, được xử lý tốt hơn bằng cách sử dụng từ điển và thử nghiệm cho sự hiện diện của khóa (với phương pháp 3, ________ 17/________ 18 hoặc các phương pháp 6 hoặc 7 của các đối tượng từ điển). Ví dụ: thay vì xử lý tệp cấu hình người dùng theo cách này:execfile('userconfig') try: background_color except NameError: background_color = 'black' try: foreground_color except NameError: foreground_color = 'white' ... làm như thế này: config = dict(globals( )) execfile('userconfig', config) background_color = config.get('background_color', 'black') foreground_color = config.get('foreground_color', 'white') ... 8 yêu cầu Python 2.2, nhưng bạn có thể có được hiệu ứng tương tự trong các phiên bản Python trước đó bằng cách sử dụng 9 thay thế. Sử dụng một từ điển được chỉ định rõ ràng cho try: x except NameError: x = None0, try: x except NameError: x = None1 và try: x except NameError: x = None2 dù sao cũng được khuyến khích, để kiểm soát không gian tên của bạn. Một trong nhiều lợi ích của việc sử dụng một từ điển được chỉ định rõ ràng như vậy, như được hiển thị ở đây, bạn không cần phải lo lắng về các biến không xác định mà chỉ cần sử dụng phương thức 6 của từ điển để tìm nạp từng khóa với giá trị mặc định được chỉ định rõ ràng để được sử dụng để được sử dụng Nếu chìa khóa không có trong từ điển.Nếu bạn biết chắc chắn rằng không gian tên nào là biến trong (nghĩa là, cụ thể là try: x except NameError: x = None4 hoặc cụ thể try: x except NameError: x = None5), bạn cũng có thể sử dụng các phương thức như 3 hoặc 6 trên từ điển có liên quan. Tuy nhiên, các biến trong cả try: x except NameError: x = None4 cũng như try: x except NameError: x = None5 có thể tồn tại (nhờ tính năng phạm vi lồng nhau là tùy chọn trong Python 2.1, nhưng luôn ở trong Python 2.2 trở lên). Ngoài ra, các thư mục không gian tên đặc biệt được trả lại bởi try: x except NameError: x = None4 và try: x except NameError: x = None5 không phù hợp với các phương pháp đột biến như 7, do đó, bạn vẫn nên sắp xếp để sử dụng từ điển rõ ràng của riêng bạn thay vì không gian tên địa phương hoặc toàn cầu, bất cứ khi nào khả thi.
Làm thế nào để bạn kiểm tra xem một biến có tồn tại hay không trong Python?Để kiểm tra sự tồn tại của các biến trên toàn cầu, chúng tôi sẽ sử dụng hàm Globals () để có được từ điển của bảng biểu tượng toàn cầu hiện tại.use the globals() function to get the dictionary of the current global symbol table.
Làm thế nào để bạn phá hủy một biến trong Python?Sử dụng lệnh 'del' là phương pháp được biết đến và dễ nhất để xóa các biến trong Python.Từ khóa Del xóa các đối tượng.Vì mọi thứ trong Python là một đối tượng, do đó, các danh sách, bộ dữ liệu và từ điển cũng có thể bị xóa bằng cách sử dụng 'del'. is the most known and easiest method to delete variables in Python. The del keyword deletes the objects. Since everything in Python is an object, therefore lists, tuples and dictionaries can also be deleted using 'del'.
Làm cách nào để xóa một biến khỏi danh sách trong Python?Trong Python, sử dụng các phương thức danh sách rõ ràng (), pop () và xóa () để xóa các mục (phần tử) khỏi danh sách.Cũng có thể xóa các mục bằng cách sử dụng câu lệnh DEL bằng cách chỉ định một vị trí hoặc phạm vi có chỉ mục hoặc lát cắt.use list methods clear() , pop() , and remove() to remove items (elements) from a list. It is also possible to delete items using del statement by specifying a position or range with an index or slice.
Làm thế nào để bạn xóa nhiều biến trong Python?Bạn có thể sử dụng danh sách được phân tách bằng dấu phẩy sau "DEL", DEL VAR1, VAR2, VAR3, để xóa các biến đã chọn. |