Làm thế nào để xác định loại biến trong Python?
Vì vậy, nếu bạn có một biến, ví dụ:
one = 1
Bạn muốn biết loại của nó?
Có những cách đúng đắn và sai cách để làm mọi thứ trong Python. Đây là cách đúng:
Sử dụng >>> type[one]
2
>>> type[one]
>>> type[one]
Bạn có thể sử dụng thuộc tính
>>> type[one]
3 để lấy tên của đối tượng. .>>> type[one].__name__
'int'
Không sử dụng >>> type[one]
6
>>> type[one]
Trong Python, những cái tên bắt đầu với dấu gạch dưới không phải là một phần của API công khai và đó là một thông lệ tốt nhất để người dùng tránh sử dụng chúng. [Ngoại trừ khi hoàn toàn cần thiết.] [Except when absolutely necessary.]
Vì
>>> type[one]
2 cung cấp cho chúng ta lớp đối tượng, chúng ta nên tránh nhận điều này trực tiếp. :>>> one.__class__
Đây thường là ý tưởng đầu tiên mọi người có khi truy cập loại đối tượng theo phương thức - họ đã tìm kiếm các thuộc tính, vì vậy loại có vẻ kỳ lạ. Ví dụ:
class Foo[object]:
def foo[self]:
self.__class__
Đừng. Thay vào đó, hãy loại [tự]:
class Foo[object]:
def foo[self]:
type[self]
Chi tiết triển khai của INT và Floats
Làm thế nào để tôi thấy loại biến cho dù nó không dấu 32 bit, đã ký 16 bit, v.v.?
Trong Python, các chi tiết cụ thể này là chi tiết thực hiện. Vì vậy, nói chung, chúng ta thường không lo lắng về điều này trong Python. Tuy nhiên, để đánh bại sự tò mò của bạn ...
Trong Python 2, int thường là một số nguyên có chữ ký bằng chiều rộng từ của triển khai [giới hạn bởi hệ thống]. Nó thường được thực hiện như một thời gian dài ở C. khi các số nguyên ngày càng lớn hơn thế này, chúng ta thường chuyển đổi chúng thành Python Longs [với độ chính xác không giới hạn, không bị nhầm lẫn với C Longs].
Ví dụ, trong một Python 2 32 bit, chúng ta có thể suy luận rằng int là một số nguyên có chữ ký 32 bit:
>>> import sys
>>> format[sys.maxint, '032b']
'01111111111111111111111111111111'
>>> format[-sys.maxint - 1, '032b'] # minimum value, see docs.
'-10000000000000000000000000000000'
Trong Python 3, int cũ biến mất, và chúng tôi chỉ sử dụng [Python's] dài như int, có độ chính xác không giới hạn.
Chúng tôi cũng có thể nhận được một số thông tin về phao của Python, thường được triển khai dưới dạng gấp đôi trong C:
>>> sys.float_info
sys.floatinfo[max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308,
min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15,
mant_dig=53, epsilon=2.2204460492503131e-16, radix=2, rounds=1]
Sự kết luận
Không sử dụng
>>> type[one]
6, API không công khai về ngữ nghĩa, để có được loại biến. Sử dụng >>> type[one]
2 thay thế.Và đừng lo lắng quá nhiều về các chi tiết triển khai của Python. Tôi không phải tự mình giải quyết các vấn đề xung quanh vấn đề này. Bạn có thể cũng sẽ không, và nếu bạn thực sự làm, bạn nên biết đủ để không tìm đến câu trả lời này để làm gì.
Nếu bạn là người mới bắt đầu Python, việc trở nên quen thuộc với tất cả các loại dữ liệu khác nhau của nó lúc đầu có thể gây nhầm lẫn. Rốt cuộc, có rất nhiều trong số chúng có sẵn cho bạn trong ngôn ngữ. Trong bài viết này, tôi sẽ chỉ cho bạn cách lấy loại cấu trúc dữ liệu khác nhau trong Python bằng cách gán chúng cho một biến, sau đó in loại vào bảng điều khiển với hàm
0.>>> type[one].__name__
'int'
Để có được loại biến trong Python, bạn có thể sử dụng hàm
>>> type[one].__name__
'int'
1 tích hợp.Cú pháp cơ bản trông như thế này:
type[variableName]
Trong Python, mọi thứ đều là một đối tượng. Vì vậy, khi bạn sử dụng hàm
>>> type[one].__name__
'int'
1 để 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.Chẳng hạn, nếu loại là một chuỗi và bạn sử dụng
>>> type[one].__name__
'int'
1 trên đó, bạn sẽ nhận được >>> type[one].__name__
'int'
4 do kết quả.Để hiển thị cho bạn chức năng
>>> type[one].__name__
'int'
1 trong hành động, tôi sẽ khai báo một số biến và gán cho họ các loại dữ liệu khác nhau trong Python.name = "freeCodeCamp"
score = 99.99
lessons = ["RWD", "JavaScript", "Databases", "Python"]
person = {
"firstName": "John",
"lastName": "Doe",
"age": 28
}
langs = ["Python", "JavaScript", "Golang"]
basics = {"HTML", "CSS", "JavaScript"}
Sau đó, tôi sẽ in các loại vào bảng điều khiển bằng cách quấn
>>> type[one].__name__
'int'
0 xung quanh một số chuỗi và hàm >>> type[one].__name__
'int'
1.>>> type[one]
0Dưới đây là các đầu ra:
>>> type[one]
1Suy nghĩ cuối cùng
Hàm
>>> type[one].__name__
'int'
1 là một hàm tích hợp có giá trị của Python mà bạn có thể lấy loại dữ liệu của một biến.Nếu bạn là người mới bắt đầu, bạn nên tự lưu cho mình những rắc rối về việc nhồi nhét các loại dữ liệu bằng cách sử dụng hàm
>>> type[one].__name__
'int'
1 để in loại biến vào bảng điều khiển. Điều này sẽ giúp bạn tiết kiệm một thời gian.Bạn cũng có thể sử dụng chức năng
>>> type[one].__name__
'int'
1 để gỡ lỗi vì trong Python, các biến không được khai báo với các loại dữ liệu. Vì vậy, hàm >>> type[one].__name__
'int'
1 được tích hợp vào ngôn ngữ để bạn kiểm tra các loại biến dữ liệu.Cảm ơn bạn đã đọc.
Học mã miễn phí. Chương trình giảng dạy nguồn mở của Freecodecamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu