Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Первые шаги в программировании: основы, Си, Objective-c


1.22

Строки и управляющие символы

 Потихоньку мы переходим на язык программирования и начинаем пользоваться общепринятыми терминами...
Мы уже с вами сталкивались с присваиванием строки переменной.

hi = "всем привет!"

В данном случае переменной "hi" присваивается значение - всем привет! используя оператор присваивания - "="
Чтобы записать текст в какую либо переменную ее нужно заключить в кавычки.

А как же нам записать текст относительно большого объема?
Так чтобы его можно было хоть как то отформатировать на экране чтобы он воспринимался в более менее удобном для чтения виде?

Вывод текста большого объема, да и просто текста, с элементами форматирования осуществляется с помощью специальных управляющих символов из таблицы ASCII

Например для того, чтобы произвести перевод на новую строку необходимо напечатать символ - \n
Как только интерпретатор встречает символ обратного слеша (наклонная черта) от ожидает увидеть за ним один из управляющих символов форматирования и если он встречается за слешем - выполняет соответствующую операцию над текстом.

Управляющие символы не отображаются на экране монитора, они предназначены только для манипуляций над текстом придавая ему определенный фид - форматирование.

Посмотрите пример вывода форматированного текста на экран монитора:

Для вывода текста большого объема:

long_text  = "\tЭто вывод не просто длинного текстового сообщения, а очень длинного сообщения. \nЧтобы использовать перевод строки в данном примере для такого  длинного сообщения используются специальные управляющие символы. \nВ частности - \n\t - он позволяет производить перевод на новую строку."

Чтобы вывести этот текст надо вызвать функцию print(), что мы и сделаем:
print(long_text)

В результате мы получим такой текст:

      Это вывод не просто длинного текстового сообщения, а очень длинного сообщения. 
Чтобы использовать перевод строки в данном примере такого длинного сообщения используются специальные управляющие символы. В частности - 
	- он позволяет производить перевод на новую строку.

Как вы видите здесь присутствуют как переводы на нову строку, так и табуляция - отступ.

Одиночный обратный слеш - \ позволяет делать перенос строки при печатании большого текста без вывода синтаксической ошибки в окне IDLE
При этом данный перенос предназначен только для переноса строки в окне IDLE, при выводе на печать этот перенос работать не будет.

Например если вы наберете текст:
long_text = "\tЭто вывод не просто длинного текстового сообщения,

И нажмете ENTER, то получите синтаксическую ошибку:
SyntaxError: EOL while scanning string literal

А вот если в конце такой строки поставите обратный слеш - \, то ошибки уже не будет!
Т.е. такой код:
long_text = "\tЭто вывод не просто длинного текстового сообщения,\


Ошибку синтаксиса не вызовет.

Более того, при нажатии ENTER будет произведен просто переход на новую строку и интерпретатор Python будет ожидать от вас продолжения ввода текстовой информации.
Сигналом интерпретатору об окончанием ввода будет постановка закрывающих кавычек - "

Если вы помните разговор о кодовых таблицах ASCII которые содержат разные коды обозначающие различные символы и которые выводятся компьютером на экран монитора, то должны помнить, что в эти таблицы входят группы так называемых непечатаемых символов, которые призваны для форматирования текста.
Для вставки такого символа в текст используют обратную косую черту, которая указывает интерпретатору что следующий за ней символ является управляющим.

Самые часто используемые управляющие символы, это:
- знак табуляции - \t
- перенос на новую строку - \n
- знак «возврата каретки» - \r

Вот таблица управляющих символов:


Символ на английском Его значение
\a bell звонок (оповещение)
\b backspace забой
\f form line перевод страницы
\n new line новая строка
\r carriage return возврат каретки
\t tab табуляция
\v vertical tab вертикальная табуляция
\' single quote одиночная кавычка
\" double quote двойные кавычки
\? question mark вопросительный знак
\\ backslash наклонная черта



В случае, если вам необходимо вывести в тексте кавычки или косую черту (слеш) или же сам управляющий символ, то перед этими знаками необходимо поставить обратную косую черту.
Иначе произойдет синтаксическая ошибка.

Полная новость доступна на сайте www.tryobj.com

 


В избранное