Bạn có thể sử dụng thuộc tính
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
6 bao gồm một lớp, ví dụ:In [1]: class Foo[object]:
...: bar = "b"
...: zulu = "z"
...:
In [2]: "bar" in Foo.__dict__
Out[2]: True
Hoặc khi bạn đang tìm kiếm các giá trị, sử dụng
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
7:In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
Như Peter Wood chỉ ra,
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
8 tích hợp cũng có thể được sử dụng để truy xuất In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
6:In [12]: "b" in vars[Foo].values[]
Out[12]: True
Thuộc tính
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
6 được sử dụng làm không gian tên cho các lớp và do đó cũng sẽ trả về tất cả các phương thức, phương thức ma thuật và thuộc tính riêng trong lớp, vì vậy, đối với sự mạnh mẽ, bạn có thể muốn sửa đổi tìm kiếm của mình một chút để bù.Trong trường hợp của bạn, bạn có thể muốn sử dụng
In [12]: "b" in vars[Foo].values[]
Out[12]: True
1, chẳng hạn như:class States[object]:
ALABAMA = "AL"
FLORIDA = "FL"
@classmethod
def is_state[cls, to_find]:
print[vars[cls]]
states = [val for key, val in vars[cls].items[]
if not key.startswith["__"]
and isinstance[val, str]]
return to_find in states
States.is_state["AL"] # True
States.is_state["FL"] # True
States.is_state["is_state"] # False
States.is_state["__module__"] # False
Cập nhật câu trả lời rõ ràng của câu hỏi OPS, nhưng độc giả cũng có thể quan tâm đến thư viện
2 trong Python 3, điều này hoàn toàn có thể là một thùng chứa tốt hơn cho dữ liệu như thế này. This clearly
answer's the OPs question, but readers may also be interested in the In [12]: "b" in vars[Foo].values[]
Out[12]: True
In [12]: "b" in vars[Foo].values[]
Out[12]: True
2 library in Python 3, which would quite possibly be a better container for data such as this. Hàm Python từ
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 kiểm tra xem đối tượng hoặc biến có phải là một thể hiện của loại lớp hoặc loại dữ liệu được chỉ định hay không.Ví dụ:
In [12]: "b" in vars[Foo].values[]
Out[12]: True
4 kiểm tra xem In [12]: "b" in vars[Foo].values[]
Out[12]: True
5 là một ví dụ của lớp In [12]: "b" in vars[Foo].values[]
Out[12]: True
6.Ngoài ra, giải quyết: Bài tập cơ bản Python và người mới bắt đầu đố: Python Basic Exercise and Beginners Quiz
Cách sử dụng hàm isInstance [] trong python
Hãy cùng xem cú pháp trước khi chuyển sang ví dụ.
Syntax::
isinstance[object, classinfo]
- Phải mất hai đối số, và cả hai đều là bắt buộc.mandatory.
- Hàm
3 kiểm tra xem đối sốIn [12]: "b" in vars[Foo].values[] Out[12]: True
8 là một thể hiện hoặc lớp con của đối số lớpIn [12]: "b" in vars[Foo].values[] Out[12]: True
9In [12]: "b" in vars[Foo].values[] Out[12]: True
Sử dụng hàm
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3, chúng ta có thể kiểm tra xem một đối tượng/biến có phải là một thể hiện của loại hoặc lớp được chỉ định như int hoặc danh sách hay không. Trong trường hợp kế thừa, chúng ta có thể kiểm tra xem lớp được chỉ định có phải là lớp cha của một đối tượng không.- Pass đối tượng đến isinstance []
Chuyển biến bạn muốn kiểm tra dưới dạng đối số
8 choIn [12]: "b" in vars[Foo].values[] Out[12]: True
3. Ở đây đối tượng có thể là bất kỳ đối tượng lớp hoặc bất kỳ tên biến nàoIn [12]: "b" in vars[Foo].values[] Out[12]: True
- Chỉ định tên loại hoặc loại là đối số
9In [12]: "b" in vars[Foo].values[] Out[12]: True
Ví dụ:
4 để kiểm tra xemclass States[object]: ALABAMA = "AL" FLORIDA = "FL" @classmethod def is_state[cls, to_find]: print[vars[cls]] states = [val for key, val in vars[cls].items[] if not key.startswith["__"] and isinstance[val, str]] return to_find in states States.is_state["AL"] # True States.is_state["FL"] # True States.is_state["is_state"] # False States.is_state["__module__"] # False
5 có phải là một ví dụ của lớp ____ 36 .________ 29 là tên loại hoặc tên lớp bạn muốn kiểm tra đối với biến. Ở đây bạn có thể chỉ định tên loại dữ liệu hoặc tên lớp. Bạn cũng có thể vượt qua nhiều lớp/loại ở định dạng tuple. Ví dụ: bạn có thể vượt quaclass States[object]: ALABAMA = "AL" FLORIDA = "FL" @classmethod def is_state[cls, to_find]: print[vars[cls]] states = [val for key, val in vars[cls].items[] if not key.startswith["__"] and isinstance[val, str]] return to_find in states States.is_state["AL"] # True States.is_state["FL"] # True States.is_state["is_state"] # False States.is_state["__module__"] # False
6,class States[object]: ALABAMA = "AL" FLORIDA = "FL" @classmethod def is_state[cls, to_find]: print[vars[cls]] states = [val for key, val in vars[cls].items[] if not key.startswith["__"] and isinstance[val, str]] return to_find in states States.is_state["AL"] # True States.is_state["FL"] # True States.is_state["is_state"] # False States.is_state["__module__"] # False
6,In [12]: "b" in vars[Foo].values[] Out[12]: True
0,isinstance[object, classinfo]
1 hoặc bất kỳ lớp do người dùng tạo.isinstance[object, classinfo]
9 is a type name or Class name you want to check against the variable. Here you can specify data type name or Class name.In [12]: "b" in vars[Foo].values[] Out[12]: True
You can also pass multiple classes/types in a tuple format. For example, you can pass
6,class States[object]: ALABAMA = "AL" FLORIDA = "FL" @classmethod def is_state[cls, to_find]: print[vars[cls]] states = [val for key, val in vars[cls].items[] if not key.startswith["__"] and isinstance[val, str]] return to_find in states States.is_state["AL"] # True States.is_state["FL"] # True States.is_state["is_state"] # False States.is_state["__module__"] # False
6,In [12]: "b" in vars[Foo].values[] Out[12]: True
0,isinstance[object, classinfo]
1, or any user-created class.isinstance[object, classinfo]
- Thực hiện thao tác của bạn, nếu kết quả là đúng
3 trả về true nếu một đối tượng hoặc biến thuộc loại được chỉ định khác.True if an object or variable is of a specified type otherwise False.In [12]: "b" in vars[Foo].values[] Out[12]: True
Thí dụ
Sử dụng isIntance [], chúng ta có thể xác minh xem một biến là số hoặc chuỗi. Hãy cùng giả sử biến
isinstance[object, classinfo]
3 và bạn muốn kiểm tra xem Num có phải là một thể hiện của loại INT hay không.num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
Output::
Yes
Như chúng ta có thể thấy trong đầu ra,
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 đã trả lại isinstance[object, classinfo]
5 vì isinstance[object, classinfo]
6 giữ giá trị số nguyên.Lưu ý: Nếu đối số
9 không phải là một loại, loại hoặc tuple loại, thì ngoại lệ In [12]: "b" in vars[Foo].values[]
Out[12]: True
8 được nêu ra.: If the isinstance[object, classinfo]
In [12]: "b" in vars[Foo].values[]
Out[12]: True
9 argument is not a Class, type, or tuple of types, a isinstance[object, classinfo]
8 exception is raised.isinstance [] với các loại tích hợp
Như bạn đã biết, mọi giá trị [biến] trong Python có một loại. Trong Python, chúng ta có thể sử dụng các loại tích hợp khác nhau như
class States[object]:
ALABAMA = "AL"
FLORIDA = "FL"
@classmethod
def is_state[cls, to_find]:
print[vars[cls]]
states = [val for key, val in vars[cls].items[]
if not key.startswith["__"]
and isinstance[val, str]]
return to_find in states
States.is_state["AL"] # True
States.is_state["FL"] # True
States.is_state["is_state"] # False
States.is_state["__module__"] # False
6, num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
0, danh sách, tuple, chuỗi, từ điển. Hầu hết thời gian, bạn muốn kiểm tra loại giá trị để thực hiện một số hoạt động. Trong trường hợp này, chức năng In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 là hữu ích.# Check if 80 is an instance of class int
number = 80
print[isinstance[number, int]]
# output True
print[isinstance[number, float]]
# output False
pi = 3.14
# Check 3.14 is an instance of class float
print[isinstance[pi, float]]
# Output True
# Check if [1 + 2j] is an instance of complex
complex_num = 1 + 2j
print[isinstance[complex_num, complex]]
# Output True
# Check if 'PYnative' is an instance of class string
name = "PYnative.com"
print[isinstance[name, str]]
# Output True
# Check if names is an instance of class list
names = ["Eric", "Scott", "Kelly"]
print[isinstance[names, list]]
# Output True
# Check if student_report is an instance of class dict
student_report = {"John": 80, "Eric": 70, "Donald": 90}
print[isinstance[student_report, dict]]
# Output True
# Check if names is an instance of class tuple
names = ["Sam", "Kelly", 'Emma']
print[isinstance[names, tuple]]
# Output True
# Check if numbers is an instance of class tuple
numbers = {11, 22, 33, 44, 55}
print[isinstance[numbers, set]]
# Output True
Lưu ý: Nếu chúng tôi sử dụng
3 với bất kỳ biến hoặc đối tượng nào có In [12]: "b" in vars[Foo].values[]
Out[12]: True
3, nó sẽ trả về num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
4. Hãy xem ví dụ đơn giản của nó.: If we use the num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 with any variable or object with a num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
3, it returns num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
4. Let see the simple example of it.var = None
# empty but not None
s1 = ''
print[isinstance[var, float]]
# Output False
print[isinstance[s1, str]]
# Output True
isinstance [] với nhiều lớp
Bạn cũng có thể kiểm tra phiên bản với nhiều loại. Hãy nói rằng bạn có một biến và bạn muốn kiểm tra xem nó có giữ bất kỳ giá trị số nào hay không, ví dụ, giá trị số có thể là một
class States[object]:
ALABAMA = "AL"
FLORIDA = "FL"
@classmethod
def is_state[cls, to_find]:
print[vars[cls]]
states = [val for key, val in vars[cls].items[]
if not key.startswith["__"]
and isinstance[val, str]]
return to_find in states
States.is_state["AL"] # True
States.is_state["FL"] # True
States.is_state["is_state"] # False
States.is_state["__module__"] # False
6 hoặc num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
0.Để xác minh xem một biến có phải là một thể hiện của một trong các loại được chỉ định hay không, chúng ta cần đề cập đến tất cả các loại trong một tuple và chuyển nó đến đối số classinfo của
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3.Thí dụ
def check_number[var]:
if isinstance[var, [int, float]]:
print['variable', var, 'is instance of numeric type']
else:
print['variable', var, 'is not instance of numeric type']
num1 = 80
check_number[num1]
# Output variable 80 is instance of numeric type
num2 = 55.70
check_number[num2]
# Output variable 55.7 is instance of numeric type
num3 = '20'
check_number[num3]
# Output variable '20' is not instance of numeric type
Sử dụng isIntance [], chúng ta có thể xác minh xem một biến là số hoặc chuỗi. Hãy cùng giả sử biến
isinstance[object, classinfo]
3 và bạn muốn kiểm tra xem Num có phải là một thể hiện của loại INT hay không.Bạn có thể xác minh xem đối tượng
num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
9 là một thể hiện của một nhân viên lớp do người dùng xác định bằng hàm In [12]: "b" in vars[Foo].values[]
Out[12]: True
3. Nó phải trả về đúng.In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
0chức năng isinstance [] với sự kế thừa
Đối tượng của loại lớp con cũng là một loại lớp cha. Ví dụ, nếu xe là một lớp con của một chiếc xe, thì đối tượng của xe có thể được gọi bằng xe hơi hoặc xe. Trong trường hợp này,
Yes1 sẽ trả lại
isinstance[object, classinfo]
5.Hàm
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 hoạt động theo nguyên tắc của mối quan hệ IS-A. Khái niệm về mối quan hệ IS-A dựa trên kế thừa lớp học.Yes4 trả về đúng nếu đối số classinfo của trường hợp [] là lớp cha mẹ của lớp đối tượng.
Để chứng minh điều này, tôi đã tạo ra hai lớp, nhà phát triển và Pythondeveoper. Ở đây Pythondeveoper là một lớp phụ của một lớp nhà phát triển.
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
1Lưu ý: Hàm
3 có lợi cho các đối tượng đúc trong thời gian chạy vì một khi bạn biết lớp đã cho là một lớp con của lớp cha, bạn có thể thực hiện việc đúc một cách thích hợp nếu được yêu cầu.: The In [12]: "b" in vars[Foo].values[]
Out[12]: True
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 function is beneficial for casting objects at runtime because once you get to know the given class is a subclass of a parent class, you can do casting appropriately if required.isinstance với danh sách python
Như bạn đã biết, một danh sách Python được sử dụng để lưu trữ nhiều giá trị cùng một lúc. Các giá trị này có thể thuộc bất kỳ loại dữ liệu nào như số, chuỗi hoặc bất kỳ đối tượng lớp nào.
Trong phần này, chúng tôi sẽ kiểm tra các hoạt động sau với danh sách Python bằng hàm
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3:- Kiểm tra xem một đối tượng thuộc loại
0 trong Python.isinstance[object, classinfo]
- Kiểm tra xem một yếu tố của danh sách là một danh sách.
- Xác minh nếu các yếu tố của danh sách là số hoặc chuỗi.
- Kiểm tra Python nếu tất cả các yếu tố của danh sách là cùng loại
Kiểm tra xem một đối tượng có phải là một thể hiện của loại danh sách không
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
2Kiểm tra xem một phần tử của danh sách là danh sách lồng nhau
Để kiểm tra xem một trong các yếu tố trong danh sách có phải là một danh sách không. Ví dụ: bạn có danh sách sau, sử dụng
In [12]: "b" in vars[Foo].values[]
Out[12]: True
3 để xác minh xem danh sách có chứa danh sách lồng nhauIn [3]: "b" in Foo.__dict__.values[]
Out[3]: True
3Lặp lại một danh sách và xác minh từng lớp phần tử và nếu nó là loại danh sách, chúng ta có thể nói rằng danh sách chứa một danh sách lồng nhau.
In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
4Kiểm tra xem các yếu tố của danh sách là số hoặc chuỗi
Kiểm tra từng loại phần tử với nhiều loại số như
class States[object]:
ALABAMA = "AL"
FLORIDA = "FL"
@classmethod
def is_state[cls, to_find]:
print[vars[cls]]
states = [val for key, val in vars[cls].items[]
if not key.startswith["__"]
and isinstance[val, str]]
return to_find in states
States.is_state["AL"] # True
States.is_state["FL"] # True
States.is_state["is_state"] # False
States.is_state["__module__"] # False
6, num = 90
result = isinstance[num, int]
if result:
print["Yes"]
else:
print["No"]
0 và # Check if 80 is an instance of class int
number = 80
print[isinstance[number, int]]
# output True
print[isinstance[number, float]]
# output False
pi = 3.14
# Check 3.14 is an instance of class float
print[isinstance[pi, float]]
# Output True
# Check if [1 + 2j] is an instance of complex
complex_num = 1 + 2j
print[isinstance[complex_num, complex]]
# Output True
# Check if 'PYnative' is an instance of class string
name = "PYnative.com"
print[isinstance[name, str]]
# Output True
# Check if names is an instance of class list
names = ["Eric", "Scott", "Kelly"]
print[isinstance[names, list]]
# Output True
# Check if student_report is an instance of class dict
student_report = {"John": 80, "Eric": 70, "Donald": 90}
print[isinstance[student_report, dict]]
# Output True
# Check if names is an instance of class tuple
names = ["Sam", "Kelly", 'Emma']
print[isinstance[names, tuple]]
# Output True
# Check if numbers is an instance of class tuple
numbers = {11, 22, 33, 44, 55}
print[isinstance[numbers, set]]
# Output True
1 sử dụng hàm In [12]: "b" in vars[Foo].values[]
Out[12]: True
3.Để tìm tất cả các biến chuỗi, hãy kiểm tra từng loại phần tử với loại
In [12]: "b" in vars[Foo].values[]
Out[12]: True
6.In [3]: "b" in Foo.__dict__.values[]
Out[3]: True
5Bước tiếp theo
Hãy cho tôi biết ý kiến và phản hồi của bạn trong phần dưới đây.
Solve::
- Bài tập Python cho người mới bắt đầu
- Câu đố Python cho người mới bắt đầu