Python is an dynamic
object-oriented programming language that can be compared with Java and
Microsoft's .NET-based languages as a general-purpose substrate for many kinds
of software development. It offers strong support for integrating with other
technologies, higher programmer productivity throughout the development life
cycle, and is particularly well suited for large or complex projects with
changing requirements.
Python's key strengths include:
1. Prototyping in Python is quick and easy, and often results in development of the final system in Python. The agile nature of the language, and the ease of refactoring code makes for rapid development directly from the initial prototype.
1. Prototyping in Python is quick and easy, and often results in development of the final system in Python. The agile nature of the language, and the ease of refactoring code makes for rapid development directly from the initial prototype.
2. Application scripting is a snap with Python's tight integration
with C/C++ and Java. Python
was designed from the ground up to be embeddable and serves as an excellent choice as a
scripting language for customization or extension of larger applications.
3. Software Testing benefits from Python's strong integration and text processing capabilities, and Python comes with its own unit testing framework.
3. Software Testing benefits from Python's strong integration and text processing capabilities, and Python comes with its own unit testing framework.
4. Web development from simple CGI scripting
to high-end web application development with mega-frameworks such as Django and Turbogears, the Zope application server, Plone content management system, Quixote web application framework, or a even a
home-grown solution based on Python's extensive and easy to use standard libraries. Python
provides interfaces to most databases, powerful text processing and document processing facilities, and plays well with other web
technologies.
5. Numeric and scientific applications make use of the Python Imaging Library, VTK and MayaVi 3D
Visualization Toolkits, Numeric Python, ScientificPython and many other tools available for numeric and
scientific applications. Many of these are supported by the Enthought Python Distribution.
6. Desktop development using wxPython, PyQt, or PyGtk for high-quality GUI applications. Protect your
investment by basing on open technologies, with deployment to most operating
systems. Support for other GUI frameworks, such as MFC, Carbon, Delphi, X11,
Motif, and Tk, is also available.
Popular Python IDEs:
Popular Python IDEs:
Python Popular Full-Stack Web Frameworks
A web application
may use a combination of a base HTTP application server, a storage mechanism
such as a database, a template engine, a request dispatcher, an authentication
module and an AJAX toolkit. These can be individual components or be provided
together in a high-level framework.
These are the most
popular high-level frameworks. Many of them include components listed on the WebComponents page.
1. Django (0.96.1 Released 2007-10-26) a
high-level Python Web framework that encourages rapid development and clean,
pragmatic design
2. Pylons (0.9.6.2 Released 2008-05-28) a lightweight Web
framework emphasizing flexibility and rapid development. It combines the very
best ideas from the worlds of Ruby, Python and Perl, providing a structured but
extremely flexible Python Web framework. It's also one of the first projects to
leverage the emerging WSGI standard, which allows extensive re-use and
flexibility but only if you need it. Out of the box, Pylons aims to make Web
development fast, flexible and easy. Pylons is built on top of Paste (see
below).
3. TurboGears (1.0.4.4 Released 2008-03-07) the rapid Web
development megaframework you've been looking for. Combines CherryPy,
Kid, SQLObject and MochiKit.
After reviewing the website check out: QuickStart Manual
4. web2py (currently version 1.37) Everything in
one package with no dependencies. Development, deployment, debugging, testing,
database administration and maintenance of applications can be done via the
provided web interface. web2py has no configuration files, requires no
installation, can run off a USB drive. web2py uses Python for the Model, the
Views and the Controllers, has a built-in ticketing system to manage errors, an
internationalization engine, works with MySQL, PostgreSQL, SQLite , Oracle,
MSSQL and the Google App Engine via an ORM abstraction layer. web2py includes
libraries to handle HTML/XML, RSS, ATOM, CSV, RTF, JSON, AJAX, XMLRPC, WIKI
markup. Production ready, capable of upload/download of very large files, and
always backward compatible.
5. Grok (0.13
Released 2008-06-23) is built on the existing Zope 3 libraries, but aims to
provide an easier learning curve and a more agile development experience. It
does this by placing an emphasis on convention over configuration and DRY
(Don't Repeat Yourself).
6. Zope (2.10.4
Released 2007-07-04, 3.3.1 Released 2007-01-14, Zope 3.4.0c1 Released
2008-01-31) Being the grandaddy of Python web frameworks, Zope has grown into a
family of frameworks over the years. Zope 1 was released in 1999. Zope 2 is
both a web framework and a general purpose application server, today it is
primarily used by ContentManagementSystems. Zope 3 is
both a standalone framework and a collection of related libraries, which are
also included with newer releases of Zope 2. All of the Zope frameworks include
the ZODB, an object database for Python.
Links:
Links:
Python Tutorial - http://www.penzilla.net/tutorials/python/index.shtml
Python Links - http://remus.rutgers.edu/cs314/f2007/ryder/lectures/Python2-19.pdf
Python Articles - http://www.devshed.com/c/b/Python/
The Python Regular Expression Debugger (Kodos) - http://sourceforge.net/project/showfiles.php?group_id=43860
Python for Java Programmers : http://www.cs.wlu.edu/~necaise/python/Main/TableOfContents
Python Regular Expressions - http://www.amk.ca/python/howto/regex/
Python HOWTOs - http://docs.python.org/dev/howto/index.html
Python for C++ guys - http://www.ibiblio.org/g2swap/byteofpython/read/
Thinking in Python Book - http://www.mindview.net/Books/TIPython
Dive Into Python Book - http://diveintopython.org/toc/index.html
Perl & Python Books - http://www.techbooksforfree.com/perlpython.shtml
Python resources - http://www.bogotobogo.com/python/pytut.php
Videos:
Python overview -
- https://www.youtube.com/watch?v=N4mEzFDjqtA
- https://www.youtube.com/watch?v=rkx5_MRAV3A
- https://www.youtube.com/watch?v=jlzePDUgL_8
- https://www.youtube.com/watch?v=RrPZza_vZ3w
- https://www.youtube.com/watch?v=nWoSEXHVl7c
- https://www.youtube.com/watch?v=FfWE9pvAnT0
- https://www.youtube.com/watch?v=X0mZXVkiaOo&index=2&list=PL9ooVrP1hQOHY-BeYrKHDrHKphsJOyRyu
- https://www.youtube.com/watch?v=pPHmtAGG3mc