Sử dụng True False True False 1 hoặc True False True False 2
Tôi không biết tại sao không có một câu trả lời nào trước khi tôi chứa cú pháp True False True False 3 đơn giản này, nhưng sử dụng True False True False 1 như thế này có vẻ rất logic và đơn giản nhất đối với tôi, cho đến nay:
(Đã thử nghiệm trong Python3):
# Option 1: check to see if `my_variable` is of type `str` type(my_variable) is str # Option 2: check to see if `my_variable` is of type `str`, including # being a subclass of type `str` (ie: also see if `my_variable` is any object # which inherits from `str` as a parent class) isinstance(my_variable, str)Tài liệu chức năng tích hợp Python True False True False 1 ở đây: //docs.python.org/3/l Library/funces.html#type. Nó nói, một phần, sau đây. Lưu ý ghi chú về True False True False 2:
True False True False 7 True False True False 8
True False True False 8Với một đối số, trả về loại đối tượng. Giá trị trả về là một đối tượng loại và thường cùng một đối tượng được trả về bởi True False True False 9.
Hàm tích hợp True False True False 2 được khuyến nghị để kiểm tra loại đối tượng, bởi vì nó tính đến các lớp con.
Vì vậy, nếu bạn đang kiểm tra loại đối tượng lớp thay vì một biến đơn giản và bạn cần tính đến các lớp con, thì hãy sử dụng True False True False 2 thay thế. Xem tài liệu của nó tại đây: //docs.python.org/3/l Library/funces.html#isinstance.
Mã ví dụ:
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str))Output:
True False True False
int (số nguyên đã ký).
Float (điểm nổi giá trị thực).
phức tạp (số phức).
Để kiểm tra xem một biến có chứa giá trị là một chuỗi không, hãy sử dụng hàm tích hợp >>> var = "a string" >>> isinstance(var, str) True 2.
>>> var = "a string" >>> isinstance(var, str) TrueHàm >>> var = "a string" >>> isinstance(var, str) True 2 có hai đối số. Đầu tiên là biến của bạn. Thứ hai là loại bạn muốn kiểm tra.
Thí dụ
>>> type(var) <type 'str'> >>> type(var) == str TrueDưới đây là một ví dụ về việc sử dụng >>> var = "a string" >>> isinstance(var, str) True 2:
if type(var) == str: print("it's a string!")Cách tiếp cận khác
Bạn cũng có thể sử dụng chức năng tích hợp >>> var = "a string" >>> isinstance(var, str) True 5 để xem loại biến của bạn là >>> var = "a string" >>> isinstance(var, str) True 6. Ví dụ:
Trong bài viết này, chúng tôi sẽ thảo luận về ba cách khác nhau để kiểm tra xem loại biến có phải là chuỗi hay không trong Python. Python cung cấp một chức năng để kiểm tra loại biến, tức là. Hàm này trả về đúng nếu đối tượng đã cho là một thể hiện của classinfo hoặc bất kỳ lớp con nào của classinfo, nếu không hãy trả về falseobjectis an instance of class classinfo or any sub class of classinfo, otherwise return False Hãy để sử dụng điều này để kiểm tra xem biến đã cho có thuộc loại chuỗi hay không, Quảng cáo Ví dụ 1:Kiểm tra xem loại biến có phải là chuỗi trong python bằng hàm isInstance () không
Output:
Type of variable is stringỞ đây chúng tôi đã chuyển biến mẫu_Text là đối số đầu tiên và str (lớp chuỗi) làm đối số thứ hai. Vì Biến mẫu_Text thực sự chứa chuỗi, do đó, nó isinstance () đã trả về đúng. Nó xác nhận rằng loại biến sample_text là chuỗi.
Bây giờ, hãy để kiểm tra một ví dụ tiêu cực,
Ví dụ 2:
sample_num = 11 # Check if the type of a variable is string if isinstance(sample_num, str): print('Type of variable is string') else: print('Type is variable is not string')Output:
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 0Ở đây chúng tôi đã chuyển biến mẫu_num là đối số đầu tiên và str (lớp chuỗi) làm đối số thứ hai. Vì biến mẫu_num thực sự chứa một số, do đó & nbsp; isInstance () đã trả về sai trong trường hợp này. Nó xác nhận rằng loại biến sample_text không phải là chuỗi.
Trong Python, chúng ta có thể sử dụng hàm loại (OBJ) để có được loại đối tượng đã cho. Hãy để sử dụng điều này để kiểm tra xem biến đã cho có thuộc loại chuỗi hay không,type(obj) function to get the type of given object. Let’s use this to check if the given variable is of string type or not,
Ví dụ 1:
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 1Output:
Type of variable is stringỞ đây, chúng tôi đã tìm nạp loại mẫu sample_text và so sánh nó với str. Vì sample_text thực sự chứa chuỗi, vì vậy điều kiện của chúng tôi đã qua. Nó xác nhận rằng loại biến sample_text là chuỗi.
Bây giờ, hãy để kiểm tra một ví dụ tiêu cực,
Ví dụ 2:
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 3Output:
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 0Ở đây chúng tôi tìm nạp loại mẫu sample_num và so sánh nó với str. Vì sample_num thực sự chứa một số, do đó, điều kiện của chúng tôi đã trả về false. & Nbsp; nó xác nhận rằng loại biến sample_num không phải là chuỗi.
Kiểm tra xem loại biến có phải là chuỗi trong Python không bằng cách so sánh các loại
Trong cả hai giải pháp trước, chúng tôi đã mã hóa lớp chuỗi. Nhưng chúng ta cũng có thể làm mà không cần mã hóa cứng, tức là bằng cách so sánh loại biến đã cho và loại của một chuỗi trống, tức là.
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 5Output:
Type of variable is stringNếu cả hai loại được trả về theo hàm loại () là như nhau, điều đó có nghĩa là biến của chúng tôi chỉ thuộc chuỗi loại.
Hãy để một ví dụ tiêu cực,
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 7Output:
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 8Ví dụ hoàn chỉnh như sau,
my_str = "hello" my_int = 7 print(type(my_str) is str) print(type(my_int) is str) print() print(isinstance(my_str, str)) print(isinstance(my_int, str)) 9Output:
True False True False 0