hex[] hàm là một phương thức tích hợp sẵn trong Python3
Cú pháp –
hex[ integer_datatype ]
hàm hex[] – Python
hàm hex[] lấy một số nguyên làm tham số đầu vào. Số nguyên có thể là dương hoặc âm, nhưng không phải là số thập phân
Khi một số nguyên được chuyển đến hàm hex[] làm tham số đầu vào, hàm hex[] trả về dạng Thập lục phân của số nguyên
Khi dạng Bát phân hoặc Dạng nhị phân của một số nguyên được chuyển trực tiếp dưới dạng tham số đầu vào cho hàm hex[], hàm này sẽ trả về dạng Thập lục phân của số nguyên
hàm hex[] trả về dữ liệu Hệ thập lục phân thuộc loại Chuỗi với tiền tố '0x' trong trường hợp một số nguyên dương được truyền làm tham số đầu vào và tiền tố '-0x' trong trường hợp một số âm được truyền làm tham số đầu vào.
Hãy hiểu rõ hơn về hàm hex[] với sự trợ giúp của các ví dụ sau –
Ví dụ 1
Đây là Mã Python -
number = 15 print[hex[number]] # Prints hex of positive Integer print[hex[-number]] # Prints hex of negative Integer print[hex[0o17]] # 0o17 is the Octal form of number 15 print[hex[0b1111]] # 0b1111 is the Binary form of number 15 print['-' * 15] # To check the Octal and Binary form of number 15 print[oct[number]] print[bin[number]] print['-' * 15] #Check input and output datatypes print[type[0o17], type[0b1111], type[oct[number]], type[bin[number]], type[hex[15]]]
đầu ra
0xf
-0xf
0xf
0xf
————
0o17
0b1111
—————
Tham khảo hình ảnh dưới đây để hiểu rõ hơn
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'9Một giá trị số nguyên hoặc đối tượng triển khai phương thức
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'6. Giá trị trả về
decimal = 15.0 print[float.hex[decimal]] # Prints hex of positive Float print[float.hex[-decimal]] # Prints hex of negative Float31Trả về một chuỗi số bát phân, có tiền tố là
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'3.
decimal = 15.0 print[float.hex[decimal]] # Prints hex of positive Float print[float.hex[-decimal]] # Prints hex of negative Float5
Python hex[] Video
Hàm hex[] trong Python – Không phải là một trò ảo thuật
Xem video này trên YouTube
Nhưng trước khi chúng ta tiếp tục, tôi rất vui được giới thiệu với bạn cuốn sách Python mới của tôi Python One-Liners [Amazon Link]
Nếu bạn thích một lớp lót, bạn sẽ YÊU cuốn sách. Nó sẽ dạy cho bạn mọi thứ cần biết về một dòng mã Python. Nhưng nó cũng là phần giới thiệu về khoa học máy tính, khoa học dữ liệu, máy học và thuật toán. Vũ trụ trong một dòng Python
Sách được phát hành năm 2020 với nhà xuất bản sách lập trình đẳng cấp thế giới NoStarch Press [San Francisco]
liên kết. https. //Không có tinh bột. com/pythononeliners
Python hex[] cho Đối tượng tùy chỉnh
Nếu bạn gọi
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'4 trên một đối tượng không phải là số nguyên hoặc đối tượng tùy chỉnh
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'5, nó phải xác định phương thức
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'6 trả về một số nguyên được liên kết với
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'5
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'
Cách khắc phục “TypeError. đối tượng 'float' không thể được hiểu là một số nguyên”?
Hàm
decimal = 15.0 print[float.hex[decimal]] # Prints hex of positive Float print[float.hex[-decimal]] # Prints hex of negative Float37 của Python chỉ có thể chuyển đổi số nguyên từ bất kỳ hệ thống số nào [e. g. , thập phân, nhị phân, bát phân] sang hệ thập lục phân. Nó không thể chuyển đổi số float thành số thập lục phân. Vì vậy, nếu bạn chuyển một số float vào hàm
decimal = 15.0 print[float.hex[decimal]] # Prints hex of positive Float print[float.hex[-decimal]] # Prints hex of negative Float37, nó sẽ trả về một giá trị
decimal = 15.0 print[float.hex[decimal]] # Prints hex of positive Float print[float.hex[-decimal]] # Prints hex of negative Float39
decimal = 15.0 print[float.hex[decimal]] # Prints hex of positive Float print[float.hex[-decimal]] # Prints hex of negative Float3
Để khắc phục lỗi này, bạn có thể làm tròn số float thành một số nguyên bằng cách sử dụng hàm
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]50 tích hợp sẵn hoặc bạn viết hàm chuyển đổi tùy chỉnh của riêng mình
Làm cách nào để chuyển đổi số float thành số thập lục phân trong Python?
Để chuyển đổi một giá trị float đã cho thành giá trị hex, hãy sử dụng hàm
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]51 trả về biểu diễn của số dấu phẩy động dưới dạng chuỗi thập lục phân bao gồm một
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]52 ở đầu và một
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]53 ở cuối và số mũ
Lưu ý rằng số mũ được cho dưới dạng lũy thừa của 2 theo đó nó được chia tỷ lệ — ví dụ:
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]54 sẽ được chia tỷ lệ thành
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]55 bằng cách sử dụng số mũ 3
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]5
Ngoài ra, nếu bạn cần một biểu diễn thập lục phân không dấu phẩy động tương tự như hầu hết các trình chuyển đổi trực tuyến, hãy sử dụng lệnh
class object_data: data_num = 0 def __index__[self]: print['we are calling the __index__[] function'] return self.id return_data = object_data[] return_data.id = 15 print[hex[return_data]]56
number1 = 15 print[hex[number1][2:]] number2 = 15.0 print[float.hex[number2][2:]]3
Đầu ra là biểu diễn bát phân của các giá trị đầu vào float
number1 = 15 print[hex[number1][2:]] number2 = 15.0 print[float.hex[number2][2:]]4
nguồn
- https. //gregtoll. com/~gregstoll/floattohex/
- https. //www. scadacore. com/công cụ/lập trình-máy tính/trực tuyến-hex-converter/
- https. // stackoverflow. com/câu hỏi/23624212/làm thế nào để chuyển đổi-a-float-thành-hex
Bài toán con định dạng hex
Hãy xem xét một số biến thể định dạng của bài toán chuyển đổi hệ thập lục phân chuyển đổi một số thành chữ thường/chữ hoa và có/không có tiền tố. Chúng tôi sử dụng Ngôn ngữ đặc tả định dạng. Bạn có thể tìm hiểu thêm về chủ đề này trong hướng dẫn blog chi tiết của chúng tôi
Chúng tôi sử dụng ba biến thể giống hệt nhau về mặt ngữ nghĩa cho từng vấn đề chuyển đổi
Cách chuyển đổi một số thành chữ thường thập lục phân bằng tiền tố
number1 = 15 print[hex[number1][2:]] number2 = 15.0 print[float.hex[number2][2:]]5
Cách chuyển đổi một số thành số thập lục phân chữ thường mà không cần tiền tố
number1 = 15 print[hex[number1][2:]] number2 = 15.0 print[float.hex[number2][2:]]6
Cách chuyển đổi một số thành một chữ hoa thập lục phân với tiền tố
number1 = 15 print[hex[number1][2:]] number2 = 15.0 print[float.hex[number2][2:]]7
Cách chuyển đổi một số thành một chữ hoa thập lục phân mà không cần tiền tố
number1 = 15 print[hex[number1][2:]] number2 = 15.0 print[float.hex[number2][2:]]8
👉 Hướng dẫn đề xuất. Chuyển đổi chuỗi Hex thành số Hex trong Python
Tóm lược
Hàm
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'2 tích hợp sẵn của Python nhận một đối số số nguyên và trả về một chuỗi thập lục phân có tiền tố
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'3
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'0
Nếu bạn gọi
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'4 trên một số không phải là số nguyên của
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'5, thì nó phải xác định phương thức
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'6 trả về một số nguyên được liên kết với
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'5
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'
Nếu không, nó sẽ ném một
class Foo: def __index__[self]: return 10 f1 = Foo[] print[hex[f1]] # '0xa'8
Đi đâu từ đây?
Đủ lý thuyết. Hãy thực hành một số
Các lập trình viên được trả sáu con số trở lên vì họ có thể giải quyết vấn đề hiệu quả hơn bằng cách sử dụng trí thông minh máy móc và tự động hóa
Để trở nên thành công hơn trong việc viết mã, hãy giải quyết nhiều vấn đề thực tế hơn cho người thực. Đó là cách bạn trau dồi những kỹ năng bạn thực sự cần trong thực tế. Rốt cuộc, việc sử dụng lý thuyết học tập mà không ai cần là gì?
Bạn xây dựng các kỹ năng mã hóa có giá trị cao bằng cách làm việc trên các dự án viết mã thực tế
Bạn có muốn ngừng học với các dự án đồ chơi và tập trung vào các dự án mã thực tế giúp bạn kiếm tiền và giải quyết các vấn đề thực sự cho mọi người không?
🚀 Nếu câu trả lời của bạn là CÓ. , cân nhắc trở thành nhà phát triển Python tự do. Đó là cách tốt nhất để tiếp cận nhiệm vụ cải thiện kỹ năng Python của bạn—ngay cả khi bạn là người mới hoàn toàn
Nếu bạn chỉ muốn tìm hiểu về cơ hội làm việc tự do, vui lòng xem hội thảo trên web miễn phí của tôi “Cách xây dựng kỹ năng Python có thu nhập cao của bạn” và tìm hiểu cách tôi phát triển công việc viết mã của mình trực tuyến cũng như cách bạn có thể làm được—từ sự thoải mái của bạn
Tham gia hội thảo trên web miễn phí ngay bây giờ
Chris
Trong khi làm việc với tư cách là nhà nghiên cứu về các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính
Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners [NoStarch 2020], đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới
Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây