Насколько хорошо 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.