Архив рубрики: Публикации

Поисковое продвижение сайта

Большая часть посетителей приходит на сайт именно из поисковых систем: Google, Yandex и т.п. В среднем, число приведенных посетителей с «поисковиков» составляет 50-80% всех посещений. Но как же сделать свой сайт привлекательным для поисковых роботов? Читать

Лучшие названия статей

В статье «Поисковое продвижение сайта» мы уже говорили о пользе статей. Но от содержания зависит количество переходов. Давайте разберемся какие статьи наиболее привлекательные для поисковых систем. И какие статьи дадут больше всего посетителей сайту. Читать

MikroTik Bonding

Познакомимся с Bonding интерфейсами на роутерах Mikrotik. Bonding — это логические интерфейсы, которые позволяют объединить в себя несколько физических портов для балансировки и отказоустойчивости.

Читать

Байты в строку в Python

В Python всякий раз, когда мы что-либо сохраняем, он хранит это как байт. Байты не читаются человеком, а строки являются удобочитаемыми формами. Всякий раз, когда мы сохраняем какую-либо строку, она не будет напрямую сохранять ее как строку; он будет закодирован в байты с использованием различных методов, таких как ASCII и UTF-8.

Например , ‘I am a andreyex’.encode(‘ASCII’)

 

В приведенном выше примере мы конвертируем строку в байты, используя метод кодирования ASCII. И когда мы распечатаем его с помощью метода печати python, мы увидим результаты вроде b’I am a andreyex ‘. Здесь мы видим, что строка просто следует за одним символом b. На самом деле мы не можем читать байты, но здесь функция печати python декодирует байты в удобочитаемые формы, чтобы мы могли читать строки.

Но на самом деле, когда мы запускаем эту строку, чтобы увидеть каждый символ строки байтов, она будет напечатана следующим образом:

str1 = 'I am a andreyex'

print(type(str1))

str2 = b'I am a andreyex'

print(type(str2))


 

Мы создали две строки. Одна строка проста. А другая строка — байты. Когда мы печатаем оба типа строк, мы получаем результаты, как показано ниже. Приведенные ниже результаты показывают, что одна строка является байтовым типом, а другая — строковым.

<class 'str'>

<class 'bytes'>

 

Теперь мы напечатаем каждый символ обеих строк, чтобы найти разницу между ними. Сначала мы напечатаем строку (str1) с помощью цикла for, который является обычной строкой.

for a in str1:

print(a)


 

Вывод:

I



a

m



a

a

n

d

r

e

y

e

x

 

Теперь мы собираемся напечатать еще одну строку (str2), которая является байтовым типом.

for a in str2:

print(a)


 

Вывод:

73

32

97

109

32

97

32

97

110

100

114

101

121

101

120

 

Из приведенных выше результатов мы можем видеть различия между типом байтов и типом строки. Тип байтов не является удобочитаемой формой.

Итак, теперь мы увидим различные методы, которые могут преобразовывать байты в строки.

 

Метод 1. Использование функции map()

В этом методе мы будем использовать функцию map() для преобразования байтов в строковый формат. Приведенная ниже небольшая программа проясняет концепцию.

byte = [97, 99, 100]



s = ''.join(map(chr, byte))

print(s)


 

Вывод:

acd

 

Строка 1: Мы создали список байтов имени.

Строка 3: Затем мы передали символы элемента в списке в качестве параметра и байт в качестве параметра функции join(), которая объединит все символы после преобразования. Наконец, результат распечатывается.

 

Метод 2 : использование функции decode()

Другой метод — это функция decode(). Функция декодирования работает прямо противоположно функции encode().

# преобразование байтов в строку с помощью decode()



str = b'blogs andreyex'

print(str)

print(type(str))



# теперь преобразование байтов в строку

output = str.decode()



print('nOutput:')

print(output)

print(type(output))


 

Вывод:

b'blogs andreyex'

<class 'bytes'>

Вывод:

blogs andreyex

<class 'str'>

 

Строка 3: Мы создали байтовую строку.

Строки с 4 по 5: эти строки просто печатают информацию о строке, которую мы создали в строке 3.

Строка 8: Теперь мы вызываем функцию декодирования и сохраняем результат под новым именем переменной.

Строки с 11 по 12: эти строки показывают, что теперь наша строка больше не имеет байтового типа и что мы можем подтвердить тип вывода, который является строковым.

 

Способ 3. Использование функции codecs.decode()

В этом методе мы будем использовать функцию codecs.decode(). Эта функция используется для преобразования двоичной строки в нормальную форму. Итак, давайте посмотрим, как на самом деле работает эта функция.

# преобразование байтов в строку с помощью codecs()

import codecs

str = b'blogs andreyex'

print(str)

print(type(str))



# теперь преобразование байтов в строку

output = codecs.decode(str)



print('nOutput:')

print(output)

print(type(output))


 

Вывод:

b'blogs andreyex'

<class 'bytes'>

Вывод:

blogs andreyex

<class 'str'>

 

Строка 2:  Импортируем библиотечные кодеки.

Строка 3: Мы создали байтовую строку.

Строки с 4 по 5: эти строки просто печатают информацию о строке, которую мы создали в строке 3.

Строка 8: Теперь мы вызываем функцию caodecs.decode и сохраняем результат под новым именем переменной.

Строки с 11 по 12: Эти строки показывают, что теперь наша строка больше не имеет байтового типа, и мы можем подтвердить тип вывода, который является строковым.

 

Метод 4 : использование функции str()

Мы также можем преобразовать байты в обычные строки с помощью функции str(). Небольшая программа для понимания этого метода приведена ниже.

if __name__ == '__main__':

str1 = b'blogs andreyex'

print(str)

print(type(str))

# теперь конвертируем байты в строку

output = str(str1, 'utf-8')

print('nOutput:')

print(output)

print(type(output))

 

Вывод:

<class 'str'>

<class 'type'>

Вывод:

blogs andreyex

<class 'str'>

 

Строка 2: мы создали байтовую строку.

Строка 3–4: эти строки просто печатают информацию о строке, которую мы создали в строке 3.

Строка 6: Теперь мы вызываем функцию str () и сохраняем результат под новым именем переменной.

Строки с 7 по 9: Эти строки показывают, что теперь наша строка больше не имеет байтового типа, и мы можем подтвердить тип вывода, который является строковым.

 

Заключение

Как программисты на Python, мы ежедневно работаем над разными языками, и иногда мы получаем ошибку из-за байтов. Итак, в этой статье мы пытаемся дать некоторые методы преобразования байтов в строку, чтобы при применении любых методов, связанных со строкой, вы не получали никаких ошибок.

В этом руководстве мы представили все концепции, которые можно использовать для преобразования байтов в строки. Вы можете выбрать в соответствии с требованиями вашей программы.



2021-10-12T12:01:59
Python

JavaScript с нуля

JavaScript с нуля

Книга JavaScript с нуля. JavaScript еще никогда не был так прост! Вы узнаете все возможности языка программирования без общих фраз и неясных терминов. Подробные примеры, иллюстрации и схемы будут понятны даже новичку. Легкая подача информации и живой юмор автора превратят нудное заучивание в занимательную практику по написанию кода. Дойдя до последней главы, вы настолько прокачаете свои навыки, что сможете решить практически любую задачу, будь то простое перемещение элементов на странице или даже собственная браузерная игра.

Скачать с mail облака

2021-10-12T09:02:56Книги и Курсы

Python: быстрый старт

Python: быстрый старт

Книга Python: быстрый старт. Всегда хотели научиться программировать на Python, но не знаете, с чего начать? Или хотите быстро перейти с другого языка на Python? Уже перепробовали множество книг и курсов, но ничего не подходит?

Все когда-то были новичками. Мы об этом часто забываем, но появляются новые поколения, которые хотят как можно быстрее и с минимум усилий освоить «незнакомый язык»

Не судите новичков строго, если вы гуру программирования, вам эта книга не нужна, но возможно она пригодится вашему ребенку, брату, сестре, другу или подруге 😉

Серия «Быстрый старт» — отличное решение, и вот почему: сложные понятия разбиты на простые шаги — вы сможете освоить язык Python, даже если никогда раньше не занимались программированием; все фундаментальные концепции подкреплены реальными примерами; вы получите полное представление о Python: структуры управления, методы обработки ошибок, концепции объектно-ориентированного программирования и т. д.; в конце книги вас ждет интересный проект, который поможет усвоить полученные знания.

Скачать с mail облака

2021-10-11T16:26:36Книги и Курсы