Hướng dẫn float to hexadecimal python - float đến python thập lục phân

This is a bit tricky in python, because aren't looking to convert the floating-point value to a (hex) integer. Instead, you're trying to interpret the IEEE 754 binary representation of the floating-point value as hex.

We'll use the

def double_to_hex(f):
    return hex(struct.unpack('
4 and
def double_to_hex(f):
    return hex(struct.unpack('
5 functions from the built-in
def double_to_hex(f):
    return hex(struct.unpack('
6 library.

A

def double_to_hex(f):
    return hex(struct.unpack('
7 is 32-bits. We'll first
def double_to_hex(f):
    return hex(struct.unpack('
4 it into a binary1 string, and then
def double_to_hex(f):
    return hex(struct.unpack('
5 it as an
hex(number)
0.

def float_to_hex(f):
    return hex(struct.unpack('

We can do the same for

hex(number)
1, knowing that it is 64 bits:

def double_to_hex(f):
    return hex(struct.unpack('

1 - Meaning a string of raw bytes; not a string of ones and zeroes.

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

Bạn phải chỉ định 0 làm cơ sở để gọi hành vi đoán tiền tố này; bỏ qua tham số thứ hai có nghĩa là giả sử cơ số 10.)Show

  • Nếu bạn muốn chuyển đổi chuỗi thành int, hãy chuyển chuỗi thành int cùng với một cơ sở mà bạn đang chuyển đổi từ đó. Cả hai chuỗi sẽ đủ để chuyển đổi theo cách này.
  • Chúng tôi đã sử dụng phương thức Python int () trong các ví dụ trên.
  • Python hex () không có 0x
  • Xem chương trình sau.
  • Python hex () không có 0x
  • Python hex () không có 0x
  • # app.py
    
    numberEL = 11.21
    print(numberEL, 'in hex =', float.hex(numberEL))
    
    numberK = 19.21
    print(numberK, 'in hex =', float.hex(numberK))

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

  • Nếu bạn muốn chuyển đổi chuỗi thành int, hãy chuyển chuỗi thành int cùng với một cơ sở mà bạn đang chuyển đổi từ đó. Cả hai chuỗi sẽ đủ để chuyển đổi theo cách này.
  • Chúng tôi đã sử dụng phương thức Python int () trong các ví dụ trên.
  • Python hex () không có 0x
  • Xem chương trình sau.
  • Trong chương trình trên, chúng tôi đã sử dụng phương pháp cắt chuỗi để in kết quả không có ‘0x’.
  • Python hex () không có 0x
  • # app.py
    
    numberEL = 11.21
    print(numberEL, 'in hex =', float.hex(numberEL))
    
    numberK = 19.21
    print(numberK, 'in hex =', float.hex(numberK))

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

  • Nếu bạn muốn chuyển đổi chuỗi thành int, hãy chuyển chuỗi thành int cùng với một cơ sở mà bạn đang chuyển đổi từ đó. Cả hai chuỗi sẽ đủ để chuyển đổi theo cách này.
  • Chúng tôi đã sử dụng phương thức Python int () trong các ví dụ trên.
  • Python hex () không có 0x
  • Xem chương trình sau.
  • Python hex () không có 0x
  • Python hex () không có 0x
  • # app.py
    
    numberEL = 11.21
    print(numberEL, 'in hex =', float.hex(numberEL))
    
    numberK = 19.21
    print(numberK, 'in hex =', float.hex(numberK))
  • Nếu bạn muốn chuyển đổi chuỗi thành int, hãy chuyển chuỗi thành int cùng với một cơ sở mà bạn đang chuyển đổi từ đó. Cả hai chuỗi sẽ đủ để chuyển đổi theo cách này.
    • Chúng tôi đã sử dụng phương thức Python int () trong các ví dụ trên.
    • Chúng tôi đã sử dụng phương thức Python int () trong các ví dụ trên.
  • Python hex () không có 0x
  • Xem chương trình sau.
  • Python hex () không có 0x
  • Python hex () không có 0x
  • # app.py
    
    numberEL = 11.21
    print(numberEL, 'in hex =', float.hex(numberEL))
    
    numberK = 19.21
    print(numberK, 'in hex =', float.hex(numberK))

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

Chúng tôi đã sử dụng phương thức Python int () trong các ví dụ trên. là một hàm tích hợ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ó.

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

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

hex(number)

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

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

Bài viết được đề xuất

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
h2 = hex(num)

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

# 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 dữ liệu đầu vào từ người dùng.

Xem kết quả đầ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
h2 = hex(num)

# Printing hexadecimal form
# we have used string slicing here
print("The ", num, " in hexadecimal is: ", h2[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 kết quả đầ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

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.

Trong chương trình trên, chúng tôi đã sử dụng phương pháp cắt chuỗi để in kết quả không có ‘0x’.

Xem chương trình sau.

Trong chương trình trên, chúng tôi đã sử dụng phương pháp cắt chuỗi để in kết quả không có ‘0x’.

Xem kết quả đầu ra.

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

Python hex () không có 0x

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

# app.py

class AI:
    id = 0

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


stockfish = AI()
stockfish.rank = 2900

print(hex(stockfish))

Xem chương trình sau.

Xem kết quả đầu ra.

def double_to_hex(f):
    return hex(struct.unpack('
0

Python hex () không có 0x

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

Xem đoạn mã sau.

def double_to_hex(f):
    return hex(struct.unpack('
1

Với tiền tố 0x, Python có thể tự động phân biệt hex và thập phân. tiền tố 0x, Python có thể tự động phân biệt hex và 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; bỏ qua tham số thứ hai có nghĩa là giả sử cơ số 10.)

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

def double_to_hex(f):
    return hex(struct.unpack('
2

Xem kết quả đầu ra.

def double_to_hex(f):
    return hex(struct.unpack('
3

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

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

Bài viết được đề xuất

Python ascii ()

Python chr ()

Ví dụ về Python regex

Python Issubclass ()

Python hasattr ()