Ну, вы можете динамически выделить размер:
#include <stdio.h>
int main(int argc, char *argv[])
{
int *array;
int cnt;
int i;
/* In the real world, you should do a lot more error checking than this */
printf("enter the amount\n");
scanf("%d", &cnt);
array = malloc(cnt * sizeof(int));
/* do stuff with it */
for(i=0; i < cnt; i++)
array[i] = 10*i;
for(i=0; i < cnt; i++)
printf("array[%d] = %d\n", i, array[i]);
free(array);
return 0;
}
Теперь, когда все сказали Django , я могу добавить свои два цента: я бы сказал, что вы могли бы узнать больше, посмотрев сначала на различные компоненты, прежде чем использовать Django. Для веб-разработки на Python вам часто нужны 3 компонента:
Что-то, что заботится материалов HTTP (например, CherryPy )
Язык шаблонов для создания ваших веб-страниц. Мако очень питонический и работает с Cherrpy.
Если вы получаете данные из база данных, ORM пригодится. SQLAlchemy будет пример .
Все ссылки выше содержат хорошие руководства. Для многих реальных случаев использования Django будет лучшим решением, чем такой стек, поскольку он легко интегрирует эту функциональность (и многое другое). И если вам нужна CMS, Django - ваш лучший выбор, кроме Zope. Тем не менее, чтобы лучше понять, что происходит, лучше использовать набор слабосвязанных программ. Django скрывает множество деталей.
Edited 3 years later: Don't use mod_python, use mod_wsgi. Flask and Werkzeug are good frameworks too. Needing to know what's going on is useful, but it isn't a requirement. That would be stupid.
Don't lookup Django until you have a good grasp of what Django is doing on your behalf. for you. Write some basic apps using mod_python and it's request object. I just started learning Python for web-development using mod_python and it has been great.
mod_python also uses a dispatcher in site-packages/mod_python/publisher.py. Have a ganders through this to see how requests can be handled in a simple-ish way.
You may need to add a bit of config to your Apache config file to get mod_python up and running but the mod_python site explains it well.
<Directory /path/to/python/files>
AddHandler mod_python .py
PythonHandler mod_python.publisher
PythonDebug On
</Directory>
And you are away!
use (as a stupidly basic example):
def foo(req):
req.write("Hello World")
in /path/to/python/files/bar.py
assuming /path/to
is your site root.
And then you can do
http://www.mysite.com/python/files/bar/foo
to see "Hello World". Also, something that tripped me up is the dispatcher uses a lame method to work out the content-type, so to force HTML use:
req.content_type = 'text/html'
Good Luck
After you have a good idea of how Python interacts with mod_python and Apache, then use a framework that does all the boring stuff for you. Up to you though, just my recommendation
Python Wiki: веб-фреймворки для Python
Если вы решите использовать Django , , официальное руководство станет отличным местом для начала. Книга Django также бесплатна.
Если вы действительно не хотите углубляться в фреймворки - а вам стоит, я от всей души рекомендую Django или Pylons - вам все равно нужно идти по пути CGI. Это полностью устаревшая технология, не говоря уже о медленной и неэффективной.
Существует стандартный способ создания веб-приложений на Python, и он называется WSGI . Если вы хотите создать собственное веб-приложение с нуля, это абсолютно правильный путь.
Тем не менее, если вы только начинаете, вам действительно стоит использовать одну из фреймворков.
Существует довольно много веб-фреймворков для python, но я использовал только Django , и мне он очень нравится .
Если у вас есть несколько часов, пройдите руководство , я вам обещаю, вам понравится :)
Python можно использовать для веб-разработки, но на языке нет специального языкового расширения или чего-то еще, что могло бы обрабатывать всю генерацию HTML или работать как PHP.
Это красиво. много работает через какой-то интерпретатор на веб-сервере (CGI, mod_python и т. д.).
Я бы порекомендовал изучить Python Web Application Frameworks или как писать скрипты Python CGI .
Как уже упоминалось, одним из наиболее заметных «ответвлений» Python, как вы их называете, будет Django . Это довольно мощный фреймворк, который позволяет быстро и безопасно создавать веб-приложения. В первую очередь, стоит посмотреть их обзор , который дает некоторое представление о том, что Django делает как фреймворк.
Просматривая их учебник , я много узнал о выдающемся Model-View -Шаблон дизайна контроллера и как его можно использовать в контексте веб-разработки. Я нашел это отличным способом начать писать работающее приложение и учиться, улучшая его.
Есть несколько вариантов веб-разработки. Исходя из моего опыта, ваш выбор снова будет зависеть от вашего приложения. Я использовал django и web.py в производстве, и я собираюсь развернуть приложение на основе пилонов .
Django скрывает много choices (поставляется с ORM и шаблонами). Документация обширна и хорошо написана. Для django доступно множество многоразовых приложений, но вы, вероятно, потратите немного времени на их беспроблемную интеграцию. Одна вещь , упомянутая в djangocon 08 , заключалась в том, что в django есть классные вещи, которые нелегко доступ к нему осуществляется в проектах, отличных от django.
web.py впечатлил меня своей простотой. Прежде чем я узнал об этом, я написал в нем небольшое приложение ( 78 строк, квазивики ).
пилоны словно находятся посередине обоих. Я могу использовать sqlalchemy и jinja , в целом приятный опыт для начала.