Python Conwert ciąg na bajty

Python Conwert ciąg na bajty
„Ciąg odnosi się do sekwencji znaków Unicode zamkniętych w pojedynczych lub podwójnych cytatach. Strings są bardzo fundamentalnym elementem budowy we współczesnym rozwoju.

Z drugiej strony bajt odnosi się do obiektu bajtów, które przechowują dane odczytujące maszynę. W przeciwieństwie do strun, bajt nie jest czytelny ludzki.

W niektórych przypadkach możesz okazać się, że musisz przekonwertować ciąg na bajt. Proces ten jest znany jako kodowanie.

Omówmy, w jaki sposób możemy przekonwertować ciąg na sekwencję bajtów za pomocą Pythona."

Metoda 1 - klasa bajtów Python

Klasa bajtów Pythona pozwala nam przekonwertować ciąg Python na bajty. Po prostu przekazujemy ciąg docelowy i kodowanie jako parametry.

Składnia jest jak pokazana poniżej:

bajty ([źródło [, kodowanie [, błędy]]])

Następnie funkcja zwraca ciąg źródłowy przekonwertowany na bajty. Pamiętaj, że obiekt powrotu jest niezmienny.

Weźmy przykładowy kod poniżej:

string = "Python3"
# Ekoduj do UTF-8
print (bajty (string, „UTF-8 '))

W powyższym kodzie używamy metody bajtes () do kodowania ciągu do bajtów, UFT-8.

Kod powyżej powinien zwrócić:

$ Python to_Bytes.py
b'python3 '

Aby wyświetlić każdy bajt w ciągu, możemy użyć pętli dla:

string = "Python3"
bajte_str = bajty (ciąg, „utf-8”)
dla bajtów w bajcie:
druk (bajt, end = ")

W powyższym kodzie używamy pętli dla iteracji przez każdy bajt w konwertowanym ciągu bajt. Kod powinien zwrócić rzeczywistą sekwencję bajtów jako:

Python To_Bytes.py
8012111610411111051%

Możemy również określić kolejne kodowanie w funkcji bajtów (). Na przykład poniższy kod określa format kodowania jako ASCII.

string = "Python3"
byte_str = bajty (string, „ascii”)
dla bajtów w bajcie:
druk (bajt, end = ")

W takim przypadku określamy parametr kodowania do kodowania ASCII.

Metoda 2 - Konwertuj ciąg na bajty za pomocą funkcji Encode

Metoda Encode jest bardzo dobrą alternatywą do przekształcania łańcucha w bajty. W rzeczywistości zaleca się użycie tej funkcji jako jej samokontentowania, ja.mi., Reprezentuje faktyczny proces przekształcania łańcucha w bajty (kodowanie).

Składnia funkcji jest jak pokazana:

strunowy.encode (Encoding = 'utf-8', errors = „scrict”)

Domyślnie funkcja akceptuje dowolne parametry i będzie używać UTF-8 jako domyślnego kodowania.

Możesz jednak określić inne formaty kodowania w parametrze kodowania.

Poniższy program pokazuje, jak kodować ciąg do bajtów z kodowaniem UTF-8 i ASCII za pomocą funkcji Encode.

string = "Python 3"
druk (ciąg.enkoduj („UTF-8”))
druk (ciąg.Encode („ASCII”))
dla bajtów w ciągu.ENCODE („UTF-8”):
druk (bajt, end = ")
wydrukować(")
dla bajtów w ciągu.Encode („ASCII”):
druk (bajt, end = ")

Powyższy program powinien zwrócić ciąg zakodowany zarówno w ASCII, jak i UTF-8.

Python To_Bytes.py
B'Python 3 '
B'Python 3 '
801211161041111103251
801211161041111103251%

Jak widać, funkcja zachowuje się podobnie jak funkcja bajtów (), ale zapewnia prosty i bardziej czytelny sposób.

Wniosek

W tym samouczku omówiliśmy dwie główne metody przekształcania łańcucha w bajty za pomocą Pythona.

Szczęśliwe kodowanie!!