Hướng dẫn python dynamically add variables to class - python tự động thêm các biến vào lớp
|
Tôi cần tạo một loạt các biến lớp và tôi muốn thực hiện nó bằng cách lặp qua một danh sách như thế:
Show
Có thể không? Tôi không muốn làm cho chúng một ví dụ (sử dụng bản thân trong __init__) nhưng là biến lớp. hỏi ngày 29 tháng 11 năm 2011 lúc 8:11Nov 29, 2011 at 8:11 4 Bạn có thể chạy mã chèn ngay sau khi một lớp được tạo:
Ngoài ra, bạn có thể tự động lưu trữ biến trong khi lớp đang được tạo:
Đã trả lời ngày 29 tháng 11 năm 2011 lúc 8:14Nov 29, 2011 at 8:14 Raymond Hettingerraymond HettingerRaymond Hettinger 208K62 Huy hiệu vàng367 Huy hiệu bạc470 Huy hiệu đồng62 gold badges367 silver badges470 bronze badges 3 Cuối bữa tiệc nhưng sử dụng hàm tạo lớp
Đã trả lời ngày 15 tháng 8 năm 2017 lúc 20:03Aug 15, 2017 at 20:03 Costtrouccostrouccostrouc 2.9372 Huy hiệu vàng18 Huy hiệu bạc22 Huy hiệu đồng2 gold badges18 silver badges22 bronze badges Nếu vì bất kỳ lý do gì, bạn không thể sử dụng câu trả lời của Raymond về việc thiết lập chúng sau khi tạo lớp thì có lẽ bạn có thể sử dụng Metaclass:
Đã trả lời ngày 29 tháng 11 năm 2011 lúc 9:29Nov 29, 2011 at 9:29 DuncanduncanDuncan 88.6K11 Huy hiệu vàng117 Huy hiệu bạc155 Huy hiệu đồng11 gold badges117 silver badges155 bronze badges 2 Phiên bản Có thể được sử dụng sau đây để tạo động các thuộc tính của lớp:
double-beep 4.59613 Huy hiệu vàng 30 Huy hiệu bạc40 Huy hiệu đồng13 gold badges30 silver badges40 bronze badges Đã trả lời ngày 9 tháng 11 năm 2019 lúc 13:02Nov 9, 2019 at 13:02 1
0 tương đương với
1.
Đã trả lời ngày 15 tháng 8 lúc 5:40Aug 15 at 5:40 Afghaniafghaniafghani 691 Huy hiệu bạc5 Huy hiệu đồng1 silver badge5 bronze badges Là một nhà phát triển Python hoặc là một kỹ sư dữ liệu sử dụng Python trong cuộc sống làm việc hàng ngày của họ, chúng ta có thể sẽ gặp phải một tình huống mà chúng ta cần khai báo và khởi tạo các biến theo một số giá trị đầu vào. Ví dụ, đây là danh sách các nguồn đã chuyển một đối số cho một số quy trình Python (chức năng hoặc lớp hoặc mô -đun) bởi người dùng hoặc một số quy trình Python khác. Và danh sách này có thể khác nhau bất cứ lúc nào. Yêu cầu dành cho mọi nguồn trong Source_List, chúng ta cần khai báo một biến theo cách sao cho tên biến phải là _config. (Người ta có thể đạt được yêu cầu này ngay cả khi không khai báo các biến động, nhưng để làm cho kịch bản đơn giản thí dụ :) ) Hãy xem làm thế nào tất cả chúng ta có thể đạt được điều này.
2. Sử dụng hàm tích hợp toàn cầu () (Bảng ký hiệu): Trình thông dịch Python duy trì cấu trúc dữ liệu chứa thông tin về từng định danh xuất hiện trong mã nguồn của chương trình. Thông tin này là về loại, giá trị, mức phạm vi và vị trí của một định danh (còn được gọi là ký hiệu). Chúng ta có thể gọi chúng là bảng biểu tượngUsing globals() built-in function (Symbol Table):Python interpreter maintains a data structure containing information about each identifier appearing in the program's source code. This information is about the type, value, scope level, and location of an identifier (also called symbol). We can call them as symbol tables
Ví dụ: trong phạm vi kịch bản của chúng tôi: Nếu bạn khởi tạo num = 1, thì & nbsp; biến 'num' sẽ được lưu trữ dưới dạng globals () ['num'] = 1
Ví dụ: trong phạm vi kịch bản của chúng tôi: Nếu bạn khởi tạo num = 1 toàn cầu và num = 2 cục bộ bên trong một hàm, bảng ký hiệu toàn cầu sẽ lưu trữ như ví dụ trước trong khi bảng biểu tượng cục bộ sẽ lưu trữ dưới dạng người dân địa phương () ['num'] = 2. Bất cứ điều gì bạn khai báo hoặc nhập với phạm vi của chức năng đó chỉ sẽ được lưu trữ trên bảng biểu tượng của người dân địa phương Bây giờ chúng ta hãy quay lại kịch bản ban đầu của chúng ta về các biến tự động khai báo. Như chúng ta đã thấy ở trên, các bảng biểu tượng toàn cầu và địa phương là nơi các biến số của phạm vi toàn cầu và địa phương được lưu trữ và truy xuất. Vậy tại sao chúng ta không truy cập trực tiếp vào các cấu trúc dữ liệu này và thêm các biến trực tiếp vào chúng theo kiểu năng động phải không? Nhưng có một điều bắt gặp ở đây rằng việc gán các biến mới trực tiếp cho người dân địa phương () sẽ không hoạt động bên trong một hàm vì nó hoạt động cho toàn cầu. Vì vậy, nếu bạn dự định sử dụng điều này chỉ để tạo biến động cục bộ, đây không phải là phương pháp cho bạn. Nhưng vâng, trên toàn cầu bạn có thể làm như sau (bạn cần đảm bảo rằng bạn không ghi đè bất kỳ biến toàn cầu nào đã được tải bởi hệ thống hoặc chương trình vô ý.) 3 Điều này có thể được sử dụng để gán động các thuộc tính thể hiện (đây là một cách tiêu chuẩn để xử lý các thuộc tính động nếu bạn ở trong một lớp). Điều này có thể được thực hiện trong __init__ hoặc trong một phương thức setter khác.Using setattr built-in method: setattr(obj, name, value) will call self.__setattr__ dunder method and will set value assigned to "name" argument as attribute name and value assigned to "value" argument as its original value. This can be utilized for dynamic assignment of instance attributes (This is a standard way of dealing with dynamic attributes if you are inside a class). This can be implemented either within __init__ or in a different setter method.
4. Sử dụng chức năng tích hợp thực thi: Hàm này được sử dụng để thực hiện động của chương trình Python có thể là mã chuỗi hoặc mã đối tượng. Nếu đó là một chuỗi, chuỗi được phân tích cú pháp như một bộ câu lệnh Python sau đó được thực thi trừ khi xảy ra lỗi cú pháp và nếu đó là mã đối tượng, thì nó chỉ được thực thi. Chúng ta phải cẩn thận rằng các câu lệnh hoàn trả có thể không được sử dụng bên ngoài các định nghĩa chức năng thậm chí không trong bối cảnh mã được truyền cho hàm EXEC (). Nó không trả lại bất kỳ giá trị nào, do đó không trả lại. & nbsp; & nbsp; & nbsp;Using exec built-in function : This function is used for the dynamic execution of Python program which can either be a string or object code. If it is a string, the string is parsed as a suite of Python statements which is then executed unless a syntax error occurs and if it is an object code, it is simply executed. We must be careful that the return statements may not be used outside of function definitions not even within the context of code passed to the exec() function. It doesn’t return any value, hence returns None. Ở đây trong kịch bản của chúng tôi, & nbsp; nếu chúng ta cần gán salesforce_config = "một số cấu hình", chúng ta cần chuyển toàn bộ câu lệnh này như một đối số cho Exec (). Vui lòng xem mã và đầu ra dưới đây: Làm thế nào để bạn tạo ra một biến động động động trong Python?
Các lớp có thể được tạo động bằng cách sử dụng hàm loại () trong python. Hàm loại () được sử dụng để trả về loại đối tượng. Cú pháp trên trả về loại đối tượng.using the type() function in Python. The type() function is used to return the type of the object. The above syntax returns the type of object.
Làm cách nào để thêm các thuộc tính vào một lớp trong Python?
Thêm các thuộc tính vào một lớp Python rất thẳng về phía trước, bạn chỉ cần sử dụng '.'toán tử sau một phiên bản của lớp với bất kỳ tên tùy ý nào bạn muốn thuộc tính được gọi, theo sau là giá trị của nó.use the '. ' operator after an instance of the class with whatever arbitrary name you want the attribute to be called, followed by its value.
Python có biến động không?
Một tên biến động, đôi khi được gọi là biến, là một biến có tên là ước tính của một biến khác.Mặc dù thực tế là Python là một ngôn ngữ rất năng động, trong đó gần như mọi thứ đều là một đối tượng, có thể xây dựng các biến động trong Python.it is possible to construct dynamic variables in Python.
Làm thế nào để bạn in một biến lớp trong Python?
Làm thế nào để in loại biến trong Python.Để có được loại biến trong Python, bạn có thể sử dụng hàm loại tích hợp ().Trong Python, mọi thứ đều là một đối tượng.Vì vậy, khi bạn sử dụng hàm loại () để in loại giá trị được lưu trữ trong một biến cho bàn điều khiển, nó sẽ trả về loại lớp của đối tượng.use the built-in type() function. In Python, everything is an object. So, when you use the type() function to print the type of the value stored in a variable to the console, it returns the class type of the object.
|
Bài Viết Liên Quan
Hướng dẫn and trong python
Bài viết được sự cho phép của tác giả Kien Dang ChungVideo trong bài viếtTrong các bài trước chúng ta đã làm quen với các kiểu dữ liệu số nguyên (int), số ...
Hướng dẫn dùng index examples trong PHP
Vietnamese (Tiếng Việt) translation by Dai Phong (you can also view the original English article) Tôi có thể nhớ những năm trước đây khi lần đầu tiên tôi bắt đầu viết ...
Hướng dẫn dùng rex command python
I. Tìm hiểu về PyGame1. PyGame là gì?Đây là thư viện mã nguồn mở trên ngôn ngữ Python dùng để lập trình video games. PyGame chứa đầy đủ các công cụ hỗ trợ ...
Hướng dẫn dùng regressuon python
Trong trang này:Nội dung chính1. Giới thiệuNhắc lại hai mô hình tuyến tínhMột ví dụ nhỏMô hình Logistic RegressionSigmoid function2. Hàm mất mát và phương pháp tối ...
Hướng dẫn python test code
Các bạn có bao giờ tái cấu trúc code không ? Sau mỗi lần refactor, bạn có bao giờ nín thở khi deploy lại sản phẩm lên PRODUCTION hay không? Làm thế nào để không ...
Hướng dẫn dùng add str trong PHP
Chuỗi ký tự (string) là loại cấu trúc dữ liệu quen thuộc có mặt trong gần như mọi ngôn ngữ lập trình. Kiểu chuỗi ký tự dùng để chứa thông tin về tên ...
Hướng dẫn dùng write python python
Nội dung chínhGhi file trong pythonGhi chuỗi vào file trong python | phương thức write()Ghi chuỗi theo định dạng vào file trong python bằng phương thức write()Ghi list vào ...
Hướng dẫn dùng text.replace js trong PHP
Phương thức string.replace() có chức năng tìm kiếm một chuỗi con hoặc một biểu thức chính quy nào đó trong chuỗi sau đó thay thế nó bằng một giá trị ...
Hướng dẫn dùng codecorrect python
Nếu bạn làm việc 1 mình, mọi thứ dường như dễ dàng để làm việc. Nhưng điều gì sẽ xảy ra khi code của bạn cần được người khác review, hỗ trợ khi có ...
Hướng dẫn dùng mysqli num_rows trong PHP
Hàm mysqli_num_rows() sẽ trả về số hàng trong tập hợp kết quả truyền vào.Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình ...
Hướng dẫn dùng base64 decoder trong PHP
(PHP 4, PHP 5, PHP 7, PHP 8)base64_decode — Decodes data encoded with MIME base64Descriptionbase64_decode(string $string, bool $strict = false): string|falseParameters string The encoded data. ...
Hướng dẫn dùng keychain.php trong PHP
Điểm hấp dẫn nhất của PHP theo mình là Array, và hầu như trong code, mọi thứ đều là key => value. Do vậy mà bạn biết thêm những hàm built-in rẳng của PHP, ...
Hướng dẫn dùng python dropna python
Khi mới bắt đầu làm quen với việc xây dựng Machine Learning Model với Python, chúng ta thường sử dụng dữ liệu mẫu từ các trang như UCI, Kaggle và TensorFlow ...
Hướng dẫn dùng funxtions trong PHP
Hàm là gì ?- Hàm là một tập hợp gồm nhiều câu lệnh, các câu lệnh được sắp xếp theo một thứ tự xác định để xây dựng thành một chức năng cụ thể, ...
Hướng dẫn dùng javatpoint python python
Python tutorial provides basic and advanced concepts of Python. Our Python tutorial is designed for beginners and professionals.Python is a simple, general purpose, high level, and object-oriented ...
Hướng dẫn dùng float 32 trong PHP
PHP cung cấp hai loại dữ liệu cơ bản: số nguyên (integer) và số thực dấu phảy động (float/double). Đây là hai trong số bốn kiểu dữ liệu đơn, bao gồm số ...
Hướng dẫn dùng outside def python
Function trong Python là gì? Tạo Function trong Python(Xem thêm: Phân biệt Function với Method trong Python)Function trong Python là gì?Trong Python, function là một nhóm các câu ...
Hướng dẫn dùng muliter python
Source code: Lib/webbrowser.pyThe webbrowser module provides a high-level interface to allow displaying web-based documents to users. Under most circumstances, simply calling the open() function from ...
Hướng dẫn dùng toupper online trong PHP
Bài này sẽ giới thiệu các hàm dùng để xử lý kiểu dữ liệu String trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập ...
Hướng dẫn dùng sql.connect trong PHP
Th6 09, 2022 Hai G. 6ít nhất Đọc Nếu bạn là người mới trong giai đoạn lập trình viên, việc biết cách kết nối PHP với MySQL database rất hữu ích. Bạn ...
