Насколько хорошо Python "течет" с HTML по сравнению с PHP?

Я собираюсь перейти от использования PHP к Python для веб-приложений, но мне было интересно, насколько Python столь же искусен, как и в HTML, как и PHP. По сути, мне очень легко/интуитивно понятно использовать <? and ?> для размещения PHP, где я хочу, и тогда я могу свободно организовывать/упорядочивать свой HTML, но я хочу. Так же легко сделать это с Python? По сути, вопрос в том, что: работает с HTML с Python, похожим на работу с HTML с PHP с точки зрения простоты использования?

Изменить: Я думаю, чтобы помочь устранить некоторые путаницы в комментариях ниже, я получаю интуицию, что PHP будет лучше, чем Python при организации интерфейсной части презентации на веб-сайте, в то время как Python превосходил бы заднюю часть (фактическое программирование...). Вопрос в том, что я ошибаюсь и Python так же хорош, как PHP для front-end?

Редактирование моего редактирования:. А, я начинаю понимать ошибку моих путей; кажется, я неосознанно подхватил некоторые вредные привычки. Я всегда думал, что все в порядке (прочитайте: стандарт), например, чтобы PHP в псевдокоде выполнял следующее:

If user has filled out form:
    print this html
else:
    print this html

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

Ответ 1

Вы не можете легко сравнивать PHP и Python.

PHP - это платформа веб-обработки, специально разработанная как плагин Apache. Он включает обработку HTTP-протокола, а также язык программирования.

Python - это "просто" язык программирования. Существует много веб-фреймворков Python для подключения Python к Apache. Там mod_wsgi, CGI, а также рамки веб-приложений различной степени сложности.

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

Структура (например Pylons, Django, TurboGears и т.д.) отделяет презентацию (HTML-шаблоны) от программирования из доступа к базе данных. PHP смешивает все три аспекта веб-приложения в одну вещь - язык PHP.

Если вы хотите переключиться с PHP на Python, вы должны сделать следующее.

  • Начните без предубеждения, без предубеждений, ничего.

  • Начните сначала с учебника по выбранной вами структуре. Сделайте весь учебник, не сравнивая ничего, что вы делаете с PHP.

  • Начните сначала с решения выбранной проблемы с выбранной вами структурой. Создайте все, не сравнивая ничего, что вы делаете с PHP.

После того, как вы создали что-то, используя веб-инфраструктуру на основе Python - не сравнивая ничего с PHP, вы можете отступить, сравнить и сравнить две вещи.

Люди, которые задают такие вопросы, как Python - substr, java и эквивалент python для foreach php ($ array as $key = > $value), то, что является эквивалентом python для PHP $_SERVER?, иногда пытаются сопоставить свои знания PHP с Python. Не делайте этого.

Единственный способ начать использовать веб-фреймворк Python - начать полностью новый.


Edit

Все веб-фреймворки Python имеют некоторые возможности "логики представления" в своих механизмах шаблонов. Это "скользкий склон", где вы можете легко превратить простой шаблон в беспорядок. Ясно, что простая конструкция {% if %} и {% for %} полезна для упрощения условных и повторяющихся элементов HTML-шаблона.

Кроме того, он начинает муть, сколько энергии нужно поместить на язык тегов.

С одной стороны, мы имеем PHP/JSP и связанные технологии, в которых механизм шаблонов (и часто делает) делает все. Это превращается в беспорядок. Средняя - Jinja и Mako где механизм шаблонов может многое сделать. На другом конце находится Django, где механизм шаблонов делает как можно меньше, чтобы не смешивать логику представления и обработки.

Ответ 2

Ну. Прежде всего, вы должны знать, что смешанный код с презентацией считается плохой практикой. Хотя вы можете использовать механизмы шаблонов, которые позволяют смешивать любой код python внутри html, например Mako, обычно веб-библиотеки и фреймворки python имеют тенденцию предпочитает писать логику в файле python script и отдельный html-шаблон для рендеринга результатов.

Тем не менее, python намного проще, чем PHP.

Но вы можете быть продуктивным только в python Если, вы готовы изучить его способ программирования.

Если вы хотите PHP, ничего больше PHP, чем сам PHP, а python использует разные подходы, поэтому, возможно, вы будете разочарованы, потому что все не так, как вы привыкли.

Однако, если вы ищете новый, лучший способ делать что-то, python для вас.

Прочитав базовый учебник по python, попробуйте создать веб-инфраструктуру python, например pylons и убедитесь сами.

Ответ 3

Если вам нужно продвинуться в веб-среде MVC, вы обнаружите, что на самом деле PHP и Python используют HTML аналогичным образом.

Работа вокруг запроса выполняется в контроллерах, используя модель для захвата данных. Затем результаты отправляются в представление, которое фактически является шаблоном HTML.

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

В PHP это часто делается с альтернативным синтаксисом PHP.

Ответ 4

Прежде всего: выходить на язык программирования из HTML приятно, когда вы делаете небольшие хаки. Для реального веб-приложения для производства я бы никогда этого не делал.

Смешение в HTML на языке программирования нецелесообразно. Лучше использовать какой-то язык шаблонов. Отступы не являются проблемой на Python больше, чем на любом другом языке.

Но, чтобы ответить на ваш реальный вопрос: То же самое. Есть языки программирования шаблонов Python, которые также позволяют вам выйти на Python, если хотите. Я бы предпочел, чтобы вы этого не сделали, но можете.

Ответ 5

Да, PHP прост в использовании. Но это не рекомендуется! Лучше вы используете шаблоны. На самом деле, вы можете использовать то же самое и с PHP.