Main Technical Features - Python

Now that you already know many reasons why you should use Python, let's focus on some of its maintechnical features.

Automatic Memory Management

Python objects are collected whenever they become unreachable. Python identifies the "garbage,"taking the responsibility from you.

Exception Handling

The exception handling support helps you to catch errors without adding a lot of error checkingstatements to the code. By the way, it is said that Python programs never crash; they always return atracebackmessage.

Rich Core Library

Many extension modules were already developed and became part of The Standard Python Library oftools, which can be used by programmers in any Python application. Besides those generic modules,we have others that are specific for particular platforms or environments. The Standard Python Librarymakes the tasks that are simple in theory also simple in practice.

In a short time, programmers can make their Python programs speak to HTTP, FTP, SMTP, Telnet,POP, and many other services because Python modules perform all the common daily tasks. You candownload a Web page, parse HTML files, show windows on the screen, and even use—as part of yourprograms—built-in interfaces that were created to handle many operational system services.

Web Scripting Support and Data Handling

Python enables you to write CGI programs that work fine in several environments. Have you everimagined switching platforms without changing the code? All right, it's possible if Python is the choice.There is even more: You can parse XML, HTML, SGML, and every other kind of text by using Pythonbuilt-in classes and regular expression methods.

Built-In Elements

Python provides a huge list of useful built-in elements (the language's basic data structure) along withmany special operations that are required to correctly process them. This list is as follows:

lData types—such as strings, tuples, lists, hash tables, and so on lOperations—like searching routine statements (in and not in), sorting, and so on

Development Flow

Even though it doesn't have any compilation or linking process, Python supports byte compilation. Thecompiled code is saved in an intermediate language called bytecode that can be accessed by any systemthat has a Python virtual machine. This feature offers a kind of portability similar to the one that Javaalso offers. Applications can be used in several different systems without the need for compilation.

Furthermore, you can create a standalone executable and securely distribute your applications.

Clear Syntax and a Diversity of Useful Lexical Elements

The way Python is organized seems to encourage object-oriented programming because everything isan object. In addition to that, it has various helpful lexical elements, such as the following:

lOperator overloading—The same operator has different meanings according to the elements thatare being referenced.

lDynamic typing—You don't need to assign types in your code. After you assign a value to anobject, it instantly knows what type it should assume. You can even assign different types to thesame variable within the same program.

lName resolution—Each structure (module, class, and so on) defines its own scope of names.

lIndentation—There are no line-end markers as in Java and C++, where programmers need touse semicolons. Python defines indentations by using block structures.

Embeddable and Extendable

Python can be embedded in applications written in many other programming and scripting languages.Whenever you need to have a programmable interface for your applications, give Python a chance.Python is well known for easily gluing everything.

Python also enables you to add low-level modules to the interpreter. Those built-in modules are easilywritten in C and C++. Extension modules are easily created and maintained using Python. For taskslike this, you can develop components in C and run them through Python subclasses.

Objects Distribution

Python can be used to implement routines that need to talk to objects in other applications. Forexample, Python is a great tool to glue Windows COM components. Besides that, Python also has afew CORBA implementations that enable you to use cross-platform distributed objects, as well.


Python has interfaces to all major commercial databases, provides several facilities to handle flat-filedatabases, and implements object-persistence systems that can save entire objects to files. But thegreatest database feature is that Python defines a standard database API, which makes it easy to portapplications to different databases.

GUI Application

You can create applications that implement graphical user interfaces (GUIs), which are portable tomany system calls, libraries, and windowing systems such as Windows MFC, Macintosh, Motif, andUNIX's X Window System. This is possible because many GUI bindings were developed for Python.The Python distribution is bundled with Tkinter, a standard object-oriented interface to the Tk GUI APIthat has become the official GUI development platform for Python.


You can develop programs in Python to help in the creation of other programs in Python. The mostimportant examples are the Debugger and the Profiler. And there is even more: Python has anIntegrated Development Environment (IDLE) developed using Python for use with Python.

Third-Party Projects Integration

The Python Extension NumPy (Numerical Extensions to Python) along with the Python Library PIL(Python Imaging Library) proves that everyone who contributes to the language can make his projectsalmost a required complement to the standard Python distribution.

All rights reserved © 2020 Wisdom IT Services India Pvt. Ltd Protection Status

Python Topics