0x Trăn

Hàm hex() là một trong những hàm tích hợp sẵn trong Python3, dùng để chuyển đổi một số nguyên thành dạng thập lục phân tương ứng

Python lục giác

Python hex() là một hàm tích hợp giúp chuyển đổi một số nguyên (trong cơ số 10) thành số thập lục phân tương ứng. Đáng chú ý, đầu vào đã cho phải ở cơ số 10. Hàm hex() chuyển đổi số nguyên thành số thập lục phân tương ứng ở dạng chuỗi và trả về nó.

Đối số số nguyên đầu vào có thể ở bất kỳ cơ số nào, chẳng hạn như nhị phân, bát phân, v.v. Python sẽ đảm nhiệm việc chuyển đổi chúng sang định dạng thập lục phân

cú pháp

hex(number)

Thông số

số. Đó là một số nguyên sẽ được chuyển đổi thành giá trị thập lục phân.

Hàm này chuyển đổi số thành dạng thập lục phân, sau đó trả về số thập lục phân đó ở định dạng chuỗi

Xin lưu ý rằng giá trị trả về luôn bắt đầu bằng '0x' (không có dấu ngoặc kép), điều này chứng tỏ rằng số ở định dạng thập lục phân

# app.py

print("Enter the number: ")

# taking input from user
num = int(input())

# converting the number into hexadecimal form
h1 = hex(num)

# Printing hexadecimal form
print("The ", num, " in hexadecimal is: ", h1)

# Converting float number to hexadecimal form
print("\nEnter a float number")
num2 = float(input())

# converting into hexadecimal form
# for float we have to use float.hex() here
h2 = float.hex(num2)

# printing result
print("The ", num2, " in hexadecimal is: ", h2)

Trong ví dụ trên, chúng tôi đã sử dụng hàm input() của Python để lấy đầu vào từ người dùng

Xem đầu ra

Enter the number:
541
The  541  in hexadecimal is:  0x21d
	
Enter a float number
123.54
The  123.54  in hexadecimal is:  0x1.ee28f5c28f5c3p+6

Python hex() không có 0x

Hãy xem một ví dụ về phương thức hex() không có 0x

Xem chương trình sau

# app.py

print("Enter the number: ")

# taking input from user
num = int(input())

# converting the number into hexadecimal form
h1 = hex(num)

# Printing hexadecimal form
# we have used string slicing here
print("The ", num, " in hexadecimal is: ", h1[2:])

# Converting float number to hexadecimal form
print("\nEnter a float number")
num2 = float(input())

# converting into hexadecimal form
h2 = float.hex(num2)

# printing result
print("The ", num2, " in hexadecimal is: ", h2[2:])

Xem đầu ra

Enter the number:
541
The  541  in hexadecimal is:  21d

Enter a float number
123.65
The  123.65  in hexadecimal is:  1.ee9999999999ap+6

Trong chương trình trên, chúng tôi đã sử dụng cắt chuỗi để in kết quả mà không có '0x'

Chúng tôi đã bắt đầu chỉ mục của mình từ vị trí thứ 2 đến vị trí cuối cùng của chuỗi, tôi. e. , h1[2. ];

Biểu diễn thập lục phân của float trong Python

Hãy xem một ví dụ về biểu diễn thập lục phân của float

Xem chương trình sau

# app.py

numberEL = 11.21
print(numberEL, 'in hex =', float.hex(numberEL))

numberK = 19.21
print(numberK, 'in hex =', float.hex(numberK))

Xem đầu ra

➜  pyt python3 app.py
11.21 in hex = 0x1.66b851eb851ecp+3
19.21 in hex = 0x1.335c28f5c28f6p+4
➜  pyt

Python hex() với đối tượng

Xem đoạn mã sau

# app.py

class AI:
    id = 0

    def __index__(self):
        print('__index__() function called')
        return self.rank


stockfish = AI()
stockfish.rank = 2900

print(hex(stockfish))

Trong ví dụ trên, chúng ta đã sử dụng phương thức __index__() với hàm hex()

Xem đầu ra

________số 8

Cách chuyển đổi chuỗi hex thành int trong Python

Không có tiền tố 0x, bạn cần chỉ định cơ sở một cách rõ ràng. Nếu không, nó sẽ không hoạt động

Xem đoạn mã sau

# app.py

data = int("0xa", 16)
print(data)

Với tiền tố 0x, Python có thể tự động phân biệt hệ thập lục phân và hệ thập phân

Bạn phải chỉ định 0 làm cơ sở để gọi hành vi đoán tiền tố này; . )

Nếu bạn muốn chuyển đổi chuỗi thành kiểu int, hãy chuyển chuỗi thành kiểu int cùng với cơ số mà bạn đang chuyển đổi từ đó. Cả hai chuỗi đều đủ để chuyển đổi theo cách này.

# app.py

print("Enter the number: ")

# taking input from user
num = int(input())

# converting the number into hexadecimal form
h1 = hex(num)

# Printing hexadecimal form
print("The ", num, " in hexadecimal is: ", h1)

# Converting float number to hexadecimal form
print("\nEnter a float number")
num2 = float(input())

# converting into hexadecimal form
# for float we have to use float.hex() here
h2 = float.hex(num2)

# printing result
print("The ", num2, " in hexadecimal is: ", h2)
0

Xem đầu ra

# app.py

print("Enter the number: ")

# taking input from user
num = int(input())

# converting the number into hexadecimal form
h1 = hex(num)

# Printing hexadecimal form
print("The ", num, " in hexadecimal is: ", h1)

# Converting float number to hexadecimal form
print("\nEnter a float number")
num2 = float(input())

# converting into hexadecimal form
# for float we have to use float.hex() here
h2 = float.hex(num2)

# printing result
print("The ", num2, " in hexadecimal is: ", h2)
1

Chúng tôi đã sử dụng phương thức Python int() trong các ví dụ trên

Đó là phương thức hex() trong Python

Bài viết đề xuất

Python mã ascii()

Python chr()

Python regex

Lớp con Python()

Python hasattr()

Facebook

Twitter

Pinterest

WhatsApp

Bài viết trước Python đầu vào từ người dùng. Hướng dẫn đầy đủ

Bài viết tiếp theo Cách chuyển đổi ký tự thành Unicode trong Python

0x Trăn

Ankit Lathiya

Ankit Lathiya là Bậc thầy về Ứng dụng Máy tính theo chuyên môn và là Nhà phát triển Android và Laravel chuyên nghiệp, đồng thời là một trong những tác giả của blog này

Ox trong Python là gì?

Khi biểu thị các số thập lục phân trong Python, hãy thêm '0x' vào trước các số đó . Ngoài ra, hãy sử dụng hàm hex() để chuyển đổi giá trị sang định dạng thập lục phân cho mục đích hiển thị.

Làm cách nào để in hex mà không cần 0x?

Để in một hệ thập lục phân dương hoặc âm mà không có tiền tố '0x' hoặc '-0x', bạn chỉ cần sử dụng chuỗi. phương thức replace('x', '0') và thay thế mỗi lần xuất hiện của 'x' bằng '0' . Chuỗi kết quả là chính xác về mặt toán học vì đứng đầu '0' không thay đổi giá trị của số.

0x trong hex là gì?

Biểu tượng. 0x. (máy tính) Cho biết rằng số theo sau ở dạng thập lục phân .

Hex trong Python là gì?

Hàm hex() chuyển đổi số đã chỉ định thành giá trị thập lục phân . Chuỗi trả về luôn bắt đầu bằng tiền tố 0x.