Python - Archered/war-repository GitHub Wiki

Basic Information

Resources

A general description of Python

Python is a high-level general purpose programming language:

  • Because code is automatically compiled to byte code and executed, Python is suitable for use as a scripting language, Web application implementation language, etc.
  • Because Python can be extended in C and C++, Python can provide the speed needed for even compute intensive tasks.
  • Because of its strong structuring constructs (nested code blocks, functions, classes, modules, and packages) and its consistent use of objects and object-oriented programming, Python enables us to write clear, logical applications for small and large tasks.

Important features of Python:

  • Built-in high level data types: strings, lists, dictionaries, etc.
  • The usual control structures: if, if-else, if-elif-else, while, plus a powerful collection iterator (for).
  • Multiple levels of organizational structure: functions, classes, modules, and packages. These assist in organizing code. An excellent and large example is the Python standard library.
  • Compile on the fly to byte code -- Source code is compiled to byte code without a separate compile step. Source code modules can also be "pre-compiled" to byte code files.
  • Object-oriented -- Python provides a consistent way to use objects: everything is an object. And, in Python it is easy to implement new object types (called classes in object-oriented programming).
  • Extensions in C and C++ -- Extension modules and extension types can be written by hand. There are also tools that help with this, for example, SWIG, sip, Pyrex.
  • Jython is a version of Python that "plays well with" Java. See: The Jython Project -- http://www.jython.org/Project/.

Web Application Development

Python has the lion's share in the field of web development. Many employers look for full-stack programmers who know Python. And you can become one of them by learning frameworks (WAF) like Django, Flask, CherryPy, and Bottle which give extensive support for web development. All of these are developed using Python. These frameworks deliver essential features to simplify tasks related to content management, accessing backend database, and handling network protocols like HTTP, SMTP, XML-RPC, FTP, and POP.

Scientific And Numeric Computing

The reason of becoming it more dominant in the field of Scientific and Numeric is the rapidly growing number of specialized modules like NumPy, SciPy, Pandas, matplotlib, and IPython. All of these are available for free and provide a fair alternative to paid products like Matlab.

Learn Python Document

⚠️ **GitHub.com Fallback** ⚠️