Hướng dẫn python define hex value - python xác định giá trị hex

Hướng dẫn python define hex value - python xác định giá trị hex

Hướng dẫn sử dụng hàm hex() trong Python

Hàm hex () trong Python 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ó. 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ố nguyên đầu vào có thể ở bất kỳ cơ sở nào 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.

hex(number)

Trong đó, number 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, và sau đó nó 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("Nhập một số nguyên: ")

# Lấy input từ người dùng
num = int(input())

# Chuyển đổi số thành hệ thập lục phân
h2 = hex(num)

# In ra số trong hệ thập lục phân
print("Số ", num, " trong hệ thập lục phân là: ", h2)

# Chuyển đổi số thập phân thành thập lục phân
print("\nNhập một số thập phân: ")
num2 = float(input())

# Chuyển đổi số vừa nhập thành hệ thập lục phân
# Đối với số thập phân chúng ta sử dụng float.hex() như sau:
h2 = float.hex(num2)

# In kết quả
print("Số ", num2, " trong hệ thập lục phân là: ", h2)

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

Chúng ta có kết quả như sau:

Nhập một số nguyên:
541
Số 541  trong hệ thập lục phân là:  0x21d
    
Nhập một số thập phân:
123.54
Số 123.54  trong hệ thập lục phân là:  0x1.ee28f5c28f5c3p+6

Hàm hex() không có 0x

Chúng ta xem xét chương trình sau:

# app.py

print("Nhập một số nguyên: ")

# Lấy input từ người dùng
num = int(input())

# Chuyển đổi thành số thập lục phân
h2 = hex(num)

# In số thập lục phân
# Chúng ta sử dụng cắt chuỗi
print("Số ", num, " trong hệ thập lục phân là: ", h2[2:])

# Chuyển đổi số thập phân thành thập lục phân
print("\nNhập một số thập phân: ")
num2 = float(input())

# Chuyển đổi số thập phân thành thập lục phân
h2 = float.hex(num2)

# In kết quả
print("Số ", num2, " trong hệ thập lục phân là: ", h2[2:])

Kết quả nhận được là:

Nhập một số nguyên:
541
Số 541  trong hệ thập lục phân là:  21d

Nhập một số thập phân:
123.65
Số 123.65  trong hệ thập lục phân là:  1.ee9999999999ap+6

Sử dụng hàm hex() với object trong Python

Chúng ta xem xét ví dụ sử dụng hàm hex() với object trong ví dụ sau:

# app.py

class AI:
    id = 0

    def __index__(self):
        print('Hàm __index__() được gọi')
        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() để có thể sử dụng nó với hàm hex().

Kết quả nhận được là:

➜  pyt python3 app.py
Hàm __index__() được gọi
0xb54
➜  pyt

Sử dụng hàm hex() với object trong Python

Chúng ta xem xét ví dụ sử dụng hàm hex() với object trong ví dụ sau:

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

# app.py

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

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

Nếu không có tiền tố 0x, bạn cần xác định rõ ràng cơ sở. Nếu không, nó không làm việc:


Xem xét ví dụ sau:

# app.py

hexStrA = "0xffff"
hexStrB = "ffff"

print(int(hexStrA, 16))
print(int(hexStrB, 16))

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

➜  pyt python3 app.py
65535
65535
➜  pyt

Bạn phải chỉ định 0 làm cơ sở để gọi hành vi suy đ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 string thành int, hãy chuyển string sang int cùng với cơ sở bạn đang chuyển đổi từ đó. Cả hai chuỗi sẽ đủ để chuyển đổi theo cách này.

Kết quả:là một ngôn ngữ dễ học nhất trong các ngôn ngữ, nó càng phổ biến hơn khi nắm giữ thế chủ đạo trong lĩnh vực AI, Machine Learning, Data Science... Nếu bạn muốn tham gia lĩnh vực này thì hãy đăng ký Học Python ngay hôm nay thôi.

Trong ví dụ trên, chúng ta đã sử dụng phương thức int() trong Python.

Lời kết


HexAdeCimal có cơ sở 16 và chúng ta có thể đại diện cho một chuỗi ở định dạng thập lục phân bằng tiền tố 0x.

Nội dung chính ShowShow

  • Phương pháp 1: Sử dụng Hex ()
  • Ví dụ: String_to_hex.py
  • Dòng 3: Chúng tôi đã tạo một chuỗi cho bản demo.
  • Phương pháp 2: Chuyển đổi chuỗi thành thập lục phân bằng cách sử dụng mã hóa ()
  • Dòng 9: Chúng tôi in giá trị mà chúng tôi nhận được sau khi chuyển đổi chuỗi thành số nguyên thập lục phân.
  • Ngoại lệ lỗi (TypeError):
  • Conclusion:
  • Làm thế nào để bạn viết hex trong python?
  • Bạn có thể chuyển đổi chuỗi thành hex trong python không?
  • Chuỗi Hex Python là gì?
  • Làm thế nào để bạn in hex trong python?

Chúng ta có thể chuyển đổi chuỗi thành thập lục phân bằng các phương thức sau:

  1. Sử dụng phương pháp hex (n)
  2. Sử dụng phương thức mã hóa ()
  3. Sử dụng phương thức leThereral_eval ()

Phương pháp 1: Sử dụng Hex ()

Ví dụ: String_to_hex.py

Ví dụ: String_to_hex.py

12345678910111213141516171819202123456789101112131415161718192021
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

Dòng 3: Chúng tôi đã tạo một chuỗi cho bản demo.

str="245FC"="245FC" = "245FC"

Phương pháp 2: Chuyển đổi chuỗi thành thập lục phân bằng cách sử dụng mã hóa ()

Dòng 9: Chúng tôi in giá trị mà chúng tôi nhận được sau khi chuyển đổi chuỗi thành số nguyên thập lục phân.= int(str, 16)

Làm thế nào để bạn viết hex trong python?

print("value",base16INT)("value",base16INT)("value",base16INT)

print("value",type(base16INT))("value",type(base16INT))("value",type(base16INT))

Bạn có thể chuyển đổi chuỗi thành hex trong python không?= hex(base16INT)

print(hex_value)(hex_value)(hex_value)

Chuỗi Hex Python là gì?

print(type(hex_value))(type(hex_value))(type(hex_value))

Output:

1234567234567
2
3
4
5
6
7

Làm thế nào để bạn in hex trong python?148988

Chúng ta có thể chuyển đổi chuỗi thành thập lục phân bằng các phương thức sau:<class 'int'>

0x245fc

Sử dụng phương pháp hex (n)class 'str'>

Dòng 3: Chúng tôi đã tạo một chuỗi cho bản demo.

Phương pháp 2: Chuyển đổi chuỗi thành thập lục phân bằng cách sử dụng mã hóa () We pass that string to the int () method with the base 16. Now, this int () method will convert the string to the hexadecimal integer value.

Dòng 9: Chúng tôi in giá trị mà chúng tôi nhận được sau khi chuyển đổi chuỗi thành số nguyên thập lục phân. We print the value which we get after converting the string to integer hexadecimal.

Làm thế nào để bạn viết hex trong python? We also print the value type to confirm that the string is now in the form of an integer.

Bạn có thể chuyển đổi chuỗi thành hex trong python không? We know the in-built hex(n) method accepts the integer value, converting the integer to the hexadecimal string. That’s why we need to convert the string to an integer to pass it into the hex () method. We passed that base16INT value to the hex() method and got the hex_value, string hexadecimal.

Dòng 13: Chúng tôi in giá trị thập lục phân chuyển đổi đó. We print that converted hexadecimal value. We print that converted hexadecimal value.

Dòng 16: Chúng tôi in loại giá trị hexadecimal được chuyển đổi, hiển thị trong đầu ra, nó là một loại chuỗi. We print the type of the converted hexadecimal value, which shows in the output it is a string type. We print the type of the converted hexadecimal value, which shows in the output it is a string type.

Vì vậy, bây giờ chúng tôi đã chuyển đổi chuỗi thành một giá trị thập lục phân.

Phương pháp 2: Chuyển đổi chuỗi thành thập lục phân bằng cách sử dụng mã hóa ()

Chúng ta cũng có thể chuyển đổi chuỗi bình thường thành một chuỗi thập lục phân mà không có bất kỳ ký tự thập lục phân nào. Đối với điều đó, chúng ta phải chuyển đổi chuỗi thành BYTE bằng cách sử dụng Phương thức mã hóa (), và sau đó chúng ta có thể chuyển đổi chuỗi thành thập lục phân như hình dưới đây:

123456789101112131415161718192021222324252345678910111213141516171819202122232425
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

# String_to_hex_utf8.py

& nbsp; # Chuyển đổi chuỗi thành byte# convert the string to the bytes# convert the string to the bytes

str='linuxhint'.encode('utf-8')='linuxhint'.encode('utf-8')= 'linuxhint'.encode('utf-8')

& nbsp; # In chuỗi được chuyển đổi thành byte# print the converted string to bytes# print the converted string to bytes

print(str)(str)(str)

& nbsp; # Chuyển đổi byte chuỗi thành chuỗi thập phân# convert the string bytes to the hexadecimal string# convert the string bytes to the hexadecimal string

hex_str = str.hex ()=str.hex()= str.hex()

& nbsp; # In loại giá trị thập lục phân được chuyển đổi# print the converted hexadecimal value type# print the converted hexadecimal value type

print(type(hex_str))(type(hex_str))(type(hex_str))

Output:

12323
2
3

b'linuxhint''linuxhint''linuxhint'

<class 'str'>

Dòng 3: Chúng tôi đã tạo một chuỗi cho bản demo. We created a string that doesn’t have any hexadecimal character. And then convert those strings to bytes using the encode () method. And then, we print those bytes, which we can see in the output line number 1. We created a string that doesn’t have any hexadecimal character. And then convert those strings to bytes using the encode () method. And then, we print those bytes, which we can see in the output line number 1.

Dòng 6: Chúng tôi chuyển chuỗi đó sang phương thức int () với cơ sở 16. Bây giờ, phương thức int () này sẽ chuyển đổi chuỗi thành giá trị số nguyên thập lục phân. We call the hex () method using the dot operator, and now the bytes are converted to the hexadecimal string value we required. To confirm the type of the result string, we just print the line number 13, and the output shows that it is in a string hexadecimal type. We call the hex () method using the dot operator, and now the bytes are converted to the hexadecimal string value we required. To confirm the type of the result string, we just print the line number 13, and the output shows that it is in a string hexadecimal type.

Dòng 9: Chúng tôi in giá trị mà chúng tôi nhận được sau khi chuyển đổi chuỗi thành số nguyên thập lục phân.

Dòng 10: Chúng tôi cũng in loại giá trị để xác nhận rằng chuỗi hiện đang ở dạng số nguyên.

12345678910111213141516171819202122232425262728293031323323456789101112131415161718192021222324252627282930313233
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

# String_to_hex_utf8.py

& nbsp; # Chuyển đổi chuỗi thành byte# convert the string to the bytes ast import literal_eval

str="0xAAA"="0xAAA" = "0xAAA"

& nbsp; # In chuỗi được chuyển đổi thành byte# print the converted string to bytes# convert the string to the integer

& nbsp; # Chuyển đổi byte chuỗi thành chuỗi thập phân# convert the string bytes to the hexadecimal string= literal_eval(str)

hex_str = str.hex ()=str.hex()# print the value and type of the convert_str

print(convert_str)(convert_str)(convert_str)

print("type",type(convert_str))("type",type(convert_str))("type", type(convert_str))

& nbsp; # In loại giá trị thập lục phân được chuyển đổi# print the converted hexadecimal value type# pass the convert_str to the hex () method

Dòng 4 đến 7: Chúng tôi đã tạo ra một chuỗi không có bất kỳ ký tự thập lục phân nào. Và sau đó chuyển đổi các chuỗi đó thành byte bằng phương thức mã hóa (). Và sau đó, chúng tôi in các byte đó, mà chúng ta có thể thấy trong dòng đầu ra số 1.= hex(convert_str)

print(hex_value)(hex_value)(hex_value)

Dòng 3: Chúng tôi đã tạo một chuỗi cho bản demo. We created a string that doesn’t have any hexadecimal character. And then convert those strings to bytes using the encode () method. And then, we print those bytes, which we can see in the output line number 1.# chcking the type of the value

print(type(hex_value))(type(hex_value))(type(hex_value))

Output:

1234567234567
2
3
4
5
6
7

2730

Dòng 6: Chúng tôi chuyển chuỗi đó sang phương thức int () với cơ sở 16. Bây giờ, phương thức int () này sẽ chuyển đổi chuỗi thành giá trị số nguyên thập lục phân. We call the hex () method using the dot operator, and now the bytes are converted to the hexadecimal string value we required. To confirm the type of the result string, we just print the line number 13, and the output shows that it is in a string hexadecimal type. <class 'int'>

0xaaa

<class 'str'>

Dòng 3: Chúng tôi đã tạo một chuỗi cho bản demo. We created a string that doesn’t have any hexadecimal character. And then convert those strings to bytes using the encode () method. And then, we print those bytes, which we can see in the output line number 1. We import the method literal_eval () from the ast library. Then we create a string with the prefix 0x. Then we passed that string to the literal_eval() method and converted it to the integer. To confirm that the output is in integer form, we print it in line number 9. We also print the type of the output, which shows it is an integer.

Dòng 6: Chúng tôi chuyển chuỗi đó sang phương thức int () với cơ sở 16. Bây giờ, phương thức int () này sẽ chuyển đổi chuỗi thành giá trị số nguyên thập lục phân. We call the hex () method using the dot operator, and now the bytes are converted to the hexadecimal string value we required. To confirm the type of the result string, we just print the line number 13, and the output shows that it is in a string hexadecimal type.We know the in-built hex(n) method that accepts the integer value, converting the integer to the hexadecimal string. That’s why we need to convert the string to an integer to pass it into the hex () method. We passed that convert_str(integer) value to the hex() method and got the hex_value, string hexadecimal. We print that converted hexadecimal value. We print the type of the converted hexadecimal value also, which shows it is a string hexadecimal type.

Ngoại lệ lỗi (TypeError):

Đôi khi chúng ta sẽ nhận được lỗi trong khi chuyển đổi chuỗi thành chuỗi thập lục phân. Lý do đằng sau đó là phương thức hex () chỉ chấp nhận giá trị số nguyên dưới dạng tham số.

1234567234567
2
3
4
5
6
7

String_hex = "0xff"="0xFF"= "0xFF"

& nbsp; hex_output = hex (string_hex)=hex(string_hex)= hex(string_hex)

print(hex_output)(hex_output)(hex_output)

Output:

1

TypeError: 'Str'Object không thể được hiểu là một số nguyên: 'str'object cannot be interpreted as an integer: 'str' object cannot be interpreted as an integer

Conclusion:

Vì vậy, chúng tôi đã thấy các phương pháp khác nhau để chuyển đổi chuỗi thành chuỗi chữ thường thập phân. Phương pháp hex () rất phổ biến vì nó dễ sử dụng. Nhưng đôi khi, chúng tôi muốn chuyển đổi chuỗi mà không cần sử dụng tiền tố 0x, vì vậy trong trường hợp đó, chúng tôi có thể sử dụng phương thức Byte Encode (), như chúng tôi đã thấy trong bài viết.

Mã của bài viết này có sẵn tại liên kết GitHub dưới đây:

https://github.com/shekharpandey89/string-to-hex-conversion

Khi biểu thị số thập lục phân trong Python, tiền tố các số có '0x'. Ngoài ra, sử dụng hàm hex () để chuyển đổi các giá trị thành định dạng thập lục phân cho mục đích hiển thị.prefix the numbers with '0x'. Also, use the hex() function to convert values to hexadecimal format for display purposes.prefix the numbers with '0x'. Also, use the hex() function to convert values to hexadecimal format for display purposes.

Sử dụng hàm int (): Sử dụng int (chuỗi, cơ sở = 16), chúng ta có thể chuyển đổi chuỗi thành một số nguyên với cơ sở 16 (hexadecimal).Khi chúng ta có số nguyên, chúng ta có thể sử dụng hàm hex () sẵn có để chuyển đổi số nguyên thành số thập lục phân.use the inbuilt hex() function to convert an integer to a Hexadecimal number.use the inbuilt hex() function to convert an integer to a Hexadecimal number.

Hàm python hex () hàm hex () chuyển đổi số được chỉ định thành giá trị thập lục phân.Chuỗi trả về luôn bắt đầu với tiền tố 0x.converts the specified number into a hexadecimal value. The returned string always starts with the prefix 0x .converts the specified number into a hexadecimal value. The returned string always starts with the prefix 0x .