Chuyển đổi chuỗi thành ASCII Python

Trong hướng dẫn này, chúng ta sẽ xem Cách chuyển đổi bất kỳ chuỗi nhị phân nào sang và từ văn bản ASCII trong Python. ASCII là viết tắt của Mã tiêu chuẩn Mỹ để trao đổi thông tin. Đây là định dạng mã hóa 8 bit tiêu chuẩn, gán các giá trị số cho các ký tự khác trong máy tính như chữ cái, dấu chấm câu, v.v.

Giá trị ASCII của 'K' là 75. Bạn có thể kiểm tra giá trị ASCII của các ký tự khác nhau bằng cách thực thi đoạn mã dưới đây. Nó nhận một ký tự đầu vào từ người dùng và hiển thị giá trị ASCII của nó bằng hàm ord()

# Program to find the ASCII value of the given character
char = str(input("Enter any character: "))
print("The ASCII value of '" + char + "' is", ord(char))

Enter any character: a
The ASCII value of 'a' is 97

Hàm ord() chỉ hoạt động với một ký tự. Nếu bạn muốn lấy giá trị ASCII của tất cả các ký tự trong một chuỗi thì hãy sử dụng vòng lặp for để truy cập từng phần tử một. Chuyển đổi chúng thành ascii bằng hàm ord() và nối giá trị vào một biến khác

Máy tính lưu trữ dữ liệu dưới dạng số nhị phân i. e. 1 và 0. Giả sử bạn muốn thực hiện một số thao tác hoặc thao tác một chuỗi được lưu trong bộ nhớ máy tính. Đối với điều này, bạn cần chuyển đổi chuỗi nhị phân này thành giá trị ASCII để lấy chuỗi gốc. Bài viết này thảo luận về các cách khác nhau để chuyển đổi một chuỗi nhị phân thành giá trị ASCII bằng ngôn ngữ Python. Nếu bạn muốn tìm hiểu thêm về Lập trình Python, hãy truy cập Hướng dẫn lập trình Python

các cách phổ biến để chuyển đổi chuỗi nhị phân sang và từ văn bản ASCII trong Python là

  1. Sử dụng mô-đun binascii để chuyển đổi Chuỗi nhị phân thành ASCII
  2. Chuỗi nhị phân sang ASCII bằng cách sử dụng  Int. hàm to_byte()
  3. ASCII sang Chuỗi nhị phân bằng Int. hàm from_bytes()

Chuyển đổi chuỗi nhị phân hoặc văn bản thành ASCII bằng mô-đun binascii

Mô-đun Binascii hỗ trợ chuyển đổi chuỗi nhị phân thành biểu diễn ASCII tương đương của chúng. Trước hết, nhập thư viện binascii và sau đó lấy chuỗi nhị phân làm đầu vào từ người dùng. Bạn cũng có thể chuyển đổi một chuỗi thành biểu diễn nhị phân bằng cách chèn “b” vào đầu chuỗi đầu vào. b2a. uu() là một hàm binascii chuyển đổi chuỗi nhị phân thành biểu diễn ascii

import binascii

# Initializing a binary string
Text = b"This is my string"

# Calling the b2a_uu() function to
# Convert the binary string to ascii
ASCII = binascii.b2a_uu(Text)

# Getting the ASCII equivalent
print(ASCII)

b"15&AI2!S=')I;F< \n"

Chuyển đổi Chuỗi nhị phân thành ASCII bằng int. hàm to_ byte()

Bước đầu tiên là khởi tạo một chuỗi nhị phân bằng lệnh int(binary_input, base). Truyền chuỗi 0 và 1 trong đối số đầu tiên và cơ sở của hệ thống số trong đối số thứ hai. Trước khi chuyển sang mã hóa, trước tiên hãy hiểu cách một chuỗi nhị phân bao gồm các bit 0 và 1 được chuyển đổi thành giá trị ASCII. Bạn đã biết tám bit bằng 1 byte. Giả sử bạn có một chuỗi nhị phân như hình bên dưới. Để tìm giá trị ascii, trước tiên chúng tôi đã nhóm 8 bit. Một nhóm 8 bit đại diện cho 1 byte đại diện cho 1 ký tự

Bước đầu tiên là tìm số byte trong chuỗi nhị phân được thực hiện bằng cách sử dụng (input_string. bit_length() +7) // 8 lệnh. Ở đây, input_string. bit_length() trả về tổng số bit trong một chuỗi đầu vào. Sau đó, chuyển đổi nó thành văn bản ASCII bằng cách sử dụng chức năng giải mã (). Mã hoàn chỉnh được đưa ra dưới đây

# Initialize a binary string
input_string=int("0100100001100101011011000110110001101111", 2);

#Obtain the total number of bytes
Total_bytes= (input_string.bit_length() +7) // 8

#Convert these bits to bytes
input_array = input_string.to_bytes(Total_bytes, "big")

#Convert the bytes to an ASCII value and display it on the output screen
ASCII_value=input_array.decode()
print(ASCII_value)

Hello

Chuyển đổi ASCII thành Văn bản nhị phân bằng Int. hàm from_bytes()

Hai phương pháp trên có liên quan đến việc chuyển đổi nhị phân sang ASCII. Trong phương pháp này, chúng ta sẽ học cách chuyển đổi ASCII sang nhị phân. Đối với điều này, hãy chuyển đổi chuỗi thành một mảng bằng cách sử dụng chuỗi. chức năng mã hóa (). Sau đó gọi hàm int. from_byte() để chuyển đổi mảng byte thành số nguyên nhị phân, sau đó được chuyển đến hàm bin() để thu được chuỗi nhị phân gồm 0 giây và 1 giây

input_array = "Hello".encode()
binary_array= int.from_bytes(input_array, "big")
output_string = bin(binary_array)
print(output_string)

0b100100001100101011011000110110001101111

Hướng dẫn này là tất cả về chuyển đổi nhị phân từ ASCII và ngược lại. Tương tự, bạn cũng có thể chuyển đổi các hệ thống số khác như số thập phân, hệ thập lục phân sang số nhị phân và ngược lại. Nếu bạn có bất kỳ phản hồi nào về bài viết này, hãy cho chúng tôi biết. Để tìm hiểu thêm về ngôn ngữ python, hãy truy cập liên kết này

Python chuỗi ASCII là gì?

Phương thức ascii() của Python. ASCII là viết tắt của Mã tiêu chuẩn Mỹ để trao đổi thông tin. Đó là tiêu chuẩn mã hóa ký tự sử dụng các số từ 0 đến 127 để biểu thị các ký tự tiếng Anh . Ví dụ: mã ASCII cho ký tự A là 65 và 90 cho ký tự Z. Tương tự, mã ASCII 97 dành cho a và 122 dành cho z.

Có các giá trị ASCII trong Python không?

Mã nguồn . Hàm này trả về điểm mã Unicode của ký tự đó. Unicode cũng là một kỹ thuật mã hóa cung cấp một số duy nhất cho một ký tự. ord() function to convert a character to an integer (ASCII value). This function returns the Unicode code point of that character. Unicode is also an encoding technique that provides a unique number to a character.

Giá trị ASCII của A đến Z là gì?

Giá trị ASCII của bảng chữ cái viết thường là từ 97 đến 122 . Và, giá trị ASCII của bảng chữ cái viết hoa là từ 65 đến 90.