Python: Multi-line строки
Представьте, что нам нужно определить строку, которая состоит из нескольких строчек — то есть внутри есть переводы строки \n . Например, она будет выглядеть так:
text = 'Пример текста,\nсостоящего из\nнескольких строк'
На печати строка примет совсем другой вид:
Пример текста, состоящего из нескольких строк
Для таких ситуаций в Python есть еще один способ создания строк, который называется multi-line строки. Чтобы описать такую «многострочную строку», нужно заключить ее в тройные кавычки — «»» или »’ . Внутри multi-line строки можно переносить текст и не использовать перевод строки \n :
text = '''Пример текста, состоящего из нескольких строк '''
Пример текста, состоящего из нескольких строк
Обратите внимание, что в конце текста есть пустая строка. Она появилась в тексте потому, что мы поставили закрывающие кавычки »’ на новой строке. Если не переносить закрывающие кавычки на новую строку, то пустая строка в тексте не появится:
text = '''Пример текста, состоящего из нескольких строк'''
Пример текста, состоящего из нескольких строк
Из-за тройных кавычек multi-line строки позволяют не экранировать кавычки внутри строки:
Здесь не нужно экранировать 'одинарные' и "двойные" кавычки
Еще multi-line строки могут становиться f-строками для интерполяции:
a = 'A' b = 'B' # Слева добавился f text = f''' и сидели на трубе '''
А и B сидели на трубе
Для компьютера неважно, какие способы соединения и переноса строк вы будете использовать. Он все равно произведет вычисления и выдаст нужный результат. Интерполяция и multi-line строки используются для удобства разработчиков, чтобы им было проще читать код.
Задание
Запишите в переменную text текст, который приведен ниже. Используйте тройные кавычки.
Lannister, Targaryen, Baratheon, Stark, Tyrell. they're all just spokes on a wheel. This one's on top, then that one's on top, and on and on it spins, crushing those on the ground.
Упражнение не проходит проверку — что делать?
Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:
- Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
В моей среде код работает, а здесь нет
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Мой код отличается от решения учителя
Это нормально , в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Полезное
Есть ли в pycharm функция множественного выделения как в sublime text?
Есть ли в pycharm функция множественного выделения как в sublime text(можно поставить много курсоров и одновременно в разных строках редактировать текст, в sublime ctrl + клик мышкой). А также очень не хватает возможности быстро выделить одинаковое слово, в sublime — ctrl + D. А также как вы решаете проблему одинаковых сочетаний горячих клавиш в линкусе и в самом пайчарме, например ctrl+alt+l в pycharm должен запустить reformat code но в линуксе это блокирует экран.
- Вопрос задан более трёх лет назад
- 18415 просмотров
4 комментария
Оценить 4 комментария
Горячие клавиши PyCharm

Unix
Автор admin На чтение 4 мин. Просмотров 169k. Опубликовано 12 октября, 2016
PyCharm — это мощный IDE и возможно лучший, для языка Python. А использование горячих клавиш сильно ускоряет и упрощает разработку.
Без лишних слов представляем небольшую подборку:
Работа с закладками:
| Поставить или снять закладку | F11 |
| Аналогично с присвоением буквы или цифры | Ctrl + F11 |
| Переход к закладке (удаление — клавишей Delete) | Shift + F11 |
| Быстрый переход к закладке с присвоенным числом | Ctrl + Число |
Редактирование:
| Отменить последнее действие | Ctrl + Z |
| Отменить последнюю отмену действия | Ctrl + Shift + Z |
| Расширенная вставка из буфера обмена (с историей) | Ctrl + Shift + V |
| Инкрементальное выделение выражения | Ctrl (+ Shift) + W |
| Перемещение между словами | Ctrl + влево/вправо |
| Прокрутка кода без изменения позиции курсора | Ctrl + вверх/вниз |
| Переход в начало/конец файла | Ctrl + Home/End |
| Удаление строки, отличие в том, где потом окажется курсор | Shift + Del (Ctrl + Y) |
| Удалить от текущей позиции до конца слова | Ctrl + Del |
| Удалить от текущей позиции до начала слова | Ctrl + Backspace |
| Дублировать текущую строку | Ctrl + D |
| Увеличить / уменьшить текущий отступ | Tab / Shift + Tab |
| Выравнивание отступов в коде | Ctrl + Alt + I |
| Приведение кода в соответствие Code-Style | Ctrl + Alt + L |
| Закомментировать/раскомментировать текущую строку | Ctrl + / |
| Закомментировать/раскомментировать выделенный код | Ctrl + Shift + / |
| Фолдинг, свернуть/развернуть | Ctrl + -/+ |
| Фолдинг, свернуть/развернуть все | Ctrl + Shift + -/+ |
| Сделать текущий скоуп сворачиваемым и свернуть его | Ctrl + Shift + . |
| Сделать текущий скоуп несворачиваемым | Ctrl + . |
| Замена в тексте | Ctrl + R |
| Замена во всех файлах | Ctrl + Shift + R |
Работа с окнами, вкладками:
| Перемещение между вкладками | Alt + влево/вправо |
| Закрыть вкладку | Ctrl + F4 |
| Открытие/закрытие окон Project, Structure, Changes и тд | Altl + число |
| Переключение между вкладками и окнами | Ctrl + Tab |
| Закрыть активное окно | Shift + Esс |
| Открыть последнее закрытое окно | F12 |
| Zoom, если он был вами настроен | Ctrl + колесико мыши |
Работа с поиском:
| Быстрый поиск по всему проекту | Дважды Shift |
| Быстрый поиск по настройкам, действиям и тд | Ctr + Shift + A |
| Перейти к следующему/предыдущему методу | Alt + вниз/вверх |
| Перемещение к началу и концу текущего скоупа | Ctrl + [ и Ctrl + ] |
| Поиск в файле | Ctrl + F |
| Поиск по всем файлам (переход — F4) | Ctr + Shift + F |
| Искать слово под курсором | Ctrl + F3 |
| Искать вперед/назад | F3 / Shift + F3 |
| Переход к строке или строке:номеру_символа | Ctrl + G |
| Список методов с переходом к их объявлению | Ctrl + F12 |
| Список недавно открытых файлов с переходом к ним | Ctrl + E |
| Список недавно измененных файлов с переходом к ним | Ctrl + Shift + E |
| Иерархия наследования текущего класса и переход по ней | Ctrl + H |
| Иерархия вызовов выбранного метода | Ctrl + Alt + H |
| Поиска класса по имени и переход к нему | Ctrl + N |
| Поиск файла по имени и переход к нему | Ctrl + Shift + N |
| Перейти к объявлению переменной, класса, метода | Ctrl + B |
| Перейти к реализации | Ctrl + Alt + B |
| Определить тип и перейти к его реализации | Ctrl + Shift + B |
| Перемещение назад по стеку поиска | Shift + Alt + влево |
| Перемещение вперед по стеку поиска | Shift + Alt + вправо |
| Переход к следующей / предыдущей ошибке | F2 / Shift + F2 |
| Найти все места, где используется метод / переменная | Shift + Alt + 7 |
| Как предыдущий пункт, только во всплывающем окне | Ctrl + Alt + 7 |
Генерация кода и рефакторинг:
| Полный автокомплит | Ctrl + Space |
| Автокомплит с фильтрацией по подходящему типу | Ctrl + Shift + Space |
| Простой автокомплит по словам, встречающимся в проекте | Alt + / |
| Реализовать интерфейс | Ctrl + I |
| Переопределить метод родительского класса | Ctrl + O |
| Генерация шаблонного кода (обход по итератору и тд) | Ctrl + J |
| Обернуть выделенный код в один из шаблонов | Ctrl + Alt + J |
| Генератор кода — сеттеров, зависимостей в pom.xml и тд | Alt + Insert |
| Переименование переменной, класса и тд во всем коде | Shift + F6 |
| Изменение сигнатуры метода во всем коде | Ctrl + F6 |
| Перемещение метода, класса или пакета | F6 |
| Создать копию класса, файла или каталога | F5 |
| Создать копию класса в том же пакете | Shift + F5 |
| Безопасное удаление класса, метода или атрибута | Alt + Delete |
| Выделение метода | Ctrl + Alt + M |
| Выделение переменной | Ctrl + Alt + V |
| Выделение атрибута | Ctrl + Alt + F |
| Выделение константы (public final static) | Ctrl + Alt + C |
| Выделение аргумента метода | Ctrl + Alt + P |
| Инлайнинг метода, переменной, аргумента или константы | Ctrl + Alt + N |
| Оптимизация импортов | Ctrl + Alt + O |
Тут представлены не все горячие клавиши, если этого для вашей работы не достаточно можете поискать нужные тут.
10 полезных сочетаний клавиш в PyCharm

Сегодня я хочу поделиться с вами своими лайфхаками касательно работы в PyCharm, ведь мы все хотим сократить время разрабатывая проект, а в этом нам помогут быстрые команды при помощи сочетаний клавиш. Так как я предпочитаю пользоваться операционной системой семейства Windows, сочетания клавиш будут заточены под нее. Перед тем как применять данные комбинации, проследите за тем чтобы у вас стояла английская раскладка, иначе, команды будут совсем другие.
Быстрое изменение регистра
Иногда полезно быстро изменить регистр слов с верхнего на нижний, или наоборот, в этом нам поможет сочетание клавиш Ctrl + Shift + U.


Быстрое форматирование кода по стандарту PEP 8
Скопированный код с сайта чаще всего требует форматирования, особенно это касается отступов, вручную это делать долго и нудно, поэтому существует команда Ctrl + Alt + L, она в миг исправит все ошибки форматирования в коде и расставит все по своим местам.


Закомментировать код
Очень полезное и всеми любимое сочетание клавиш быстрого закомментирования текста, выручает, когда закомментировать часть кода чтобы избежать его выполнения Ctrl + /.

Табуляция
Некоторые конструкции, например такие как if, elif, else требуют обозначения вложенности (отступов), т.е. после условия нужно отступить от левого края нажав кнопку пробел на четыре раза. Такой ввод можно заменить, нажав один раз кнопку Tab. Обратная команда Shit + Tab, убирает отступ.

Дублирование строки
Быстро продублировать строку поможет сочетание клавиш Ctrl + D.

Перемещение блоков
Для быстрого перемещения строк или блоков используйте сочетание клавиш Ctrl + Shift + Стрелка вверх – двигает выделенный блок или строку вверх, Ctrl + Shift + Стрелка вниз – двигает выделенный блок или строку вниз.


Выделить текущий блок
При помощи сочетания клавиш Ctrl + W, можно выделить текущий блок, если нажимать это сочетание дальше, то будут выделяться родительские блоки.


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

Показ последних блоков кода с которыми работали
Весьма пригодная команда, для вызова ее используйте комбинацию клавиш Ctrl + Shift + E.

Установка и управление закладками
Для того чтобы установить закладку на строке кода, используйте сочетание клавиш Ctrl + F11, откроется меню в котором можно будет выбрать в качестве имени закладки как цифру, так и букву. Быстро установить безымянную закладку поможет клавиша F11, открыть меню с закладками можно при помощи сочетания клавиш Alt + 2.

А какие горячие клавиши в PyCharm знаете вы? Поделитесь ими в комментариях.