Я думаю, что Click оборачивает ваш абзац, основываясь на ширине терминала, но не учитывая новые строки:
Поведение Click по умолчанию заключается в переписывании текста на основе ширины терминала. В некоторых случаях это может стать проблемой. Основная проблема заключается в показе примеров кода, где новые строки значимы.
blockquote>Если вы берете всю строку справки с добавлением отступа, которое добавляет сам Click, и удаляете все новые строки, слово
success
заканчивается в позиции символа 81:--opt INTEGER Flag for if we want success or failure 0 - failure 1 - success 123456789012345678901234567890123456789012345678901234567890123456789012345678901 1 2 3 4 5 6 7 8
Если Сами символы новой строки включены в его вычисление, что приводит нас к 83. Я не уверен, насколько широк ваш терминал, но 80 столбцов - это обычная ширина.
Посмотрите, можете ли вы переопределить это с помощью
\b
(обернуто для удобства чтения):@click.option( '--opt', default=1, help='\b\nFlag for if we want success or failure\n0 = failure\n1 = success' )
Переопределение можно отключить для каждого абзаца, добавив строка только с
BLOCKQUOTE>\b
escape-маркером. Эта строка будет удалена из текста справки, и перемотка будет отключена.
Я думаю, что "Привет Мировая" программа имеет свое использование. Это говорит много, если можно запустить ту программу:
Так, по тем причинам я не нахожу лучшей альтернативы "Привет Миру".
Однако с точки зрения хорошего введения на языки в целом, я - большой поклонник кодирования проблем как проблема Python. Вам дают ряд проблем/загадок, к которым Вы имеете вместе с языком. Они начинают чрезвычайно основной (первый легче, чем запись привет мир).
Они быстро прогрессируют в более трудные и усовершенствованные задачи и обычно являются задачами, которые предназначаются для показа конкретного аспекта языка.
Мне только жаль, что каждый язык не имел такую проблему программирования забавы. Я думаю LISP, Haskell, C++, C, Java, и т.д. проблема была бы забавным введением в языки для людей. Они могли быть адаптированы в соответствии с языками.
Проблема C++ могла быстро начать иметь проблемы, включающие указатели и другие обычно недооцененные аспекты, чтобы помочь донести те трудные биты, в то время как проблемы LISP/Haskell могли начать задавать некоторые вопросы, которые более адаптируются в соответствии с функциональными языками.
Если Вы волнуетесь по поводу объема "привет мировой" программы, можно всегда обновлять до "привет вселенной"
Larry O'Brian записал три очень хороших сообщения в блоге на упражнениях для ознакомления с языком программирования.
По моему скромному мнению, цель привет мировой программы состоит в том, чтобы показать очень простую программу в том языке, для не проявления сил и возможностей.
Это было бы твердо, поскольку каждый язык имеет свои собственные преимущества. Сравнение стандартного набора функций для каждого языка могло бы напрашиваться на неприятности, специально для вводной книги.
Зависит от того, какая базовая функция языка устанавливает его кроме других языков там. Haskell quicksort приходит на ум.
После этих слов привет мир действительно показывает, как сразу произвести своего рода вывод.
"99 бутылок пива" являются немного более включенным примером, чем "Привет мир", таким образом, это может показать вещи, которые дифференцируют один язык от других.
Лично, когда я начинаю на новом языке программирования, я пытаюсь переписать часть кода, который я уже написал на другом языке так, чтобы я мог получить ощущение языка и видеть, как это имеет отношение назад к тому, что я уже изучил в своих предыдущих событиях программирования.
Люди предлагают программировать простой материал как деревья двоичного поиска и другие структуры данных наряду с простым способом протестировать это, он работает. Другая вещь не состоит в том, чтобы разочароваться в языке программирования, когда вещи начинают быть сложными или не согласуются с Вашим предыдущим опытом.
Что касается поиска преимуществ на языках программирования? Ну, начните путем записи небольшого приложения и затем после того как у Вас есть чувство для взгляда языка на проекты с открытым исходным кодом, записанные на этом языке. Посмотрите то, что это делает очень хорошо, взгляд на списки рассылки, узнанные, где трудные части были для того проекта, где они должны были работать вокруг некоторой особенности на языке, который вызвал их проблемы.
Определенные языки Вы знаете сразу, что они были предназначены для определенной задачи и использования их за пределами той задачи, не рекомендуются. Например, PHP является языком веб-программирования, то, что можно записать большие программы в нем и выполнить их на командной строке, не означает, что это - язык, который должен использоваться для тех задач.
Я был очень благоприятно впечатлен выбором Bjarne Stroustrup сделать довольно мощный калькулятор, включая парсинг. Я ожидал, что это будет слишком трудно как первый проект, но он делает превосходное задание шаг за шагом. И заключительное приложение не является игрушкой.
Все в его новой книге, Программируя Принципы и Практику в C++.
Я некоторые случаи "Привет мир" могу быть нетривиальным. Посмотрите, например, Struts 2 "Привет мир". Чтобы иметь его работа, необходимо было бы настроить сервер, настроенная среда, развернутое приложение, и т.д.
Хорошо "blinky" является хорошей альтернативой, но это находится больше во встроенном мире, что это релевантно...
Для Вас то, кто имеет, пропускает blinky, это должно только заставить светодиод мигать вкл\выкл в устойчивом темпе. Вид шоу, как работать с gpio.
/Johan