Python is an interpreted, interactive, object-oriented programming language. It contains the concepts of modules, exceptions, dynamic types, very high-level dynamic data types, and classes. Python combines super power with extremely clear syntax. It comes with many system calls and libraries and interfaces to various windowing systems, and can be extended with C or C ++. It can also be used as an extended language for applications that require a programmable interface. Finally, Python is portable: it runs on many Unix variants, Mac, and operating systems above Windows 2000.
To learn more, check out the Python tutorial first. Python Beginner’s Guide provides links to other getting started tutorials and resources for learning Python.
What Is The Python Software Foundation?
The Python Software Foundation (PSF) is an independent, non-profit organization that holds copyrights for Python 2.1 and above. The mission of PSF is to advance open source technologies related to the Python programming language and promote the use of Python.
Donations to the PSF are tax-exempt in the United States. If you are using Python and find it helpful, you can donate through the PSF donation page.
Are there copyright restrictions on using Python?
You are free to use the source code as long as you retain the copyright information and display it in your Python-based product documentation. If you follow this copyright rule, you can use Python for commercial purposes, sell copies of Python in source or binary code (with or without modification), or include Python in some form. Of course, we still want to know all the commercial uses of Python.
See the PSF Licenses page for further instructions and links to the full text of the license.
The Python logo is a registered trademark and may be used with permission in some cases. See the Trademark Use Policy for details.
What was the original reason for creating Python?
Here is a very brief summary of the original origins, written by Guido van Rossum himself:
I have accumulated extensive experience in implementing interpreted languages while working in the ABC department of CWI, and through working with members of this department, I have learned a lot about language design. This is the original source of many Python features, including the use of indentation to organize statements and the inclusion of very high-level data structures (though the specific implementation details are completely different in Python).
I have complained a lot about the ABC language, but I also like its many features. It is not possible to make up for my dissatisfaction by extending the ABC language (or its implementation)-in fact the lack of scalability is one of its biggest problems. I also have some experience with Modula-2 +, I have talked with the designers of Modula-3, and I have read Modula-3 reports. Modula-3 is the original source of syntax and semantics for exception mechanisms in Python, as well as some other language features.
I also worked for CWI’s Amoeba distributed operating system department. At the time we needed a better way to manage the system than writing C programs or Bash scripts, because Amoeba had its own system call interface and could not be easily accessed through Bash. My experience with error handling in Amoeba made me deeply aware of the importance of exception handling among programming language features.
I found that a scripting language with ABC-style syntax and access to Amoeba system calls would suffice. I realized that writing an Amoeba-specific language was stupid, so I decided to write a language that was fully extensible.
During the Christmas holiday of 1989, I had plenty of time on hand, so I decided to try it out. In the following year, although I still mainly do this in my spare time, the use of Python in the Amoeba project has been very successful, and feedback from colleagues has allowed me to add many early Improve.
By February 1991, after more than a year of development, I decided to release it to USENET. Everything after that can be seen in the Misc / HISTORY file.
What is Python for?
Python is a high-level, multi-purpose programming language that can be used to solve many different problems.
The language comes with a huge standard library covering string processing (regular expressions, Unicode, comparing differences between files, etc.), Internet protocols (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI programming, etc.) , Software engineering (unit testing, logging, performance analysis, Python code parsing, etc.), and operating system interfaces (system calls, file systems, TCP / IP sockets, etc.). Please check the directory of the Python Standard Library for all available content. In addition, various third-party extensions can be obtained. Visit the Python Package Index to find the packages you are interested in.
What Is The Numbered Version Of The Python Version?
The Python version is numbered A.B.C or A.B. A is called the major version number-it only increments when very significant changes are made to the language features. B is called the minor version number, and it is incremented when there are minor changes in the language features. C is called the micro version number-it increments every time a bug fix is released. Please refer to PEP 6 for details on the issue fix release.
Not all releases are bug fixes. During the development of a new major release, a series of development releases are also released, which are marked by alpha (a), beta (b) or release candidate (rc). The alpha version is an early release beta version, and its interface has not been finalized; it is not unexpected that the interface changed between the two alpha release versions. The beta version is more stable, it will retain the existing interface, but it may also add new modules, and the release candidate version will remain frozen and will not be changed unless there are major issues that need to be corrected.
The above alpha, beta and release candidate versions are appended with a suffix. The suffix for the alpha version is “aN” with a small number N, the suffix for the beta version is “bN” with a small number N, and the suffix for the release candidate version is “cN” with a small number N . In other words, all versions marked 2.0aN are earlier than versions marked 2.0bN, which in turn are earlier than versions marked 2.0cN, and these versions are all earlier than 2.0.
You may also see version numbers with a “+” suffix, such as “2.2+”. This means an unreleased version, built directly from the CPython development code repository. In actual operation, when a minor version is finally released, the unreleased version number will be incremented to the next minor version number and become the “a0” version, such as “2.4a0”.
The release source code is a gzip-compressed tar file containing the complete C source code, Sphinx-formatted documentation, Python library modules, sample programs, and some useful freely distributed software. The source code will compile and run directly on most UNIX-like platforms.
Is there a newsgroup or mailing list specifically for Python?
There is a newsgroup comp.lang.python and a mailing list python-list. Newsgroups and mailing lists are interoperable-you don’t need to subscribe to mailing lists if you can read the news. comp.lang.python has a lot of traffic and receives hundreds of posts every day. Usenet users are usually better at handling such a large amount of traffic.
Announcements about new software releases and events can be found in comp.lang.python.announce, a strictly managed low-traffic list that receives about five posts per day. You can subscribe on the Python announcement mailing list page.
How do I submit bug reports and patches for Python?
To report bugs or submit patches, use Roundup installed at https://bugs.python.org/.
You must have a Roundup account to report errors; this way we can contact you if you have follow-up questions. This also enables Roundup to send you update messages as we handle reported errors. If you’ve used SourceForge to report errors to Python before, you can get your Roundup password through Roundup’s password reset operation.
For more information on the Python development process, see the Python Developer Guide.
Are there any publicly available Python-related articles that I can reference?
Probably the best way to reference is to cite your favorite Python related books.
The first article on Python was written in 1991, and its content is now quite outdated.
Guido van Rossum and Jelke de Boer, “Testing Remote Servers Interactively Using the Python Programming Language”, CWI Quarterly, Volume 4, Issue 4 (December 1991), Amsterdam, pp. 283–303.
Are There Any Books Related To Python?
Yes, there are many related books, and many more are coming soon. Visit python.org’s wiki page
You can also search for “Python” at major online bookstores and filter out references to Monty Python; or you can search for “Python” plus “language”.
Where is www.python.org located in the world?
The Python project’s infrastructure is distributed around the world and managed by the Python infrastructure team. For details, please visit here.
Why is it named Python?
While working on the Python implementation, Guido van Rossum also read the just-released “Monty Python’s Flying Circus” script, a BBC comedy series that has been in the air since the 1970s. Van Rossum felt he needed to choose a short, unique, and slightly mysterious name, so he decided to name the new language Python.
How Stable Is Python?
Very stable. New stable releases have been introduced approximately every 6 to 18 months since 1991, and this state appears to be continuing. The interval between major releases is currently around 18 months.
Developers will also roll out “bug fix” releases of older versions, so the stability of existing releases will gradually improve. Issue fix releases will be marked with the third part of the version number (eg 3.5.3, 3.6.2) for stability management; only fixes to known issues will be included in the issue fix release, the same The interface determination in the series of bugfix releases will always be consistent.
The latest stable version can always be found on the Python download page. There are two versions of Python available in production: 2.x and 3.x. The recommended version is 3.x, and most widely used libraries support it. Although 2.x is still widely used, it will no longer be maintained after January 1, 2020.
How Many People Are Using Python?
The number of users must be very large, but it is quite difficult to make accurate statistics.
Python is free to download, so there is no sales data, it is also available from many different websites, and is included in many Linux distributions, so the download statistics also cannot fully explain the problem.
The comp.lang.python newsgroup is very active, but not all Python users will post in newsgroups, and many will not even read newsgroups.
What Important Projects Are Developed In Python? ¶
High-level Python projects include the Mailman mailing list manager and the Zope application server. Several Linux distributions, most notably Red Hat, have used Python to write some or all of their installers and systems management software. Big companies that use Python internally include Google, Yahoo, and Lucasfilm.
What can we expect from Python in the future?
Visit https://tecnewss.com/ to see the Python Enhancement Proposal (PEP). PEP is a design document that describes a proposal to add a new feature to Python, which provides concise technical specifications and basic principles. You can find the PEP titled “Python X.Y Release Schedule”, where X.Y is a version that has not been released publicly.
Is It Reasonable To Propose An Incompatible Change To Python?
It is generally unreasonable. Hundreds of millions of Python code already exists in the world, so any change to the language would be unacceptable even if it would invalidate only a very small portion of existing programs. Even if you can provide a conversion program, there is still the problem of updating all the documents; there are also a large number of published Python books, and we do not want to make them all waste paper in a flash.
If a feature must be changed, a gradual upgrade path should be provided. PEP 5 describes the process to follow to introduce backwards incompatible changes to minimize disruption to users.
Is Python A Programming Friendly Language For Beginners?
It is still common practice to start students with a subset of procedural, statically typed programming languages such as Pascal, C or C ++, and Java. But learning with Python as the first programming language may be more beneficial to students. Python has a very simple and consistent syntax and a large standard library, and most importantly, using Python in an introductory programming tutorial allows students to focus on more important programming skills, such as problem decomposition and data type design. Using Python, you can quickly introduce students to basic concepts such as loops and processes. They may even start touching user-defined objects in the first class.
For students who have never encountered programming before, using a statically typed language can feel unnatural. This introduces additional complexity that students must master and slows down teaching. Students need to try to think like a computer, decompose problems, design consistent interfaces, and encapsulate data. Although learning and using a statically typed language is important in the long run, this is not the best topic to explore in a student’s first programming lesson.
There are many other features that make Python a good entry language. Like Java, Python has a large standard library, so it is possible to arrange practical programming projects for students very early in the course. The programming job need not be limited to the standard four arithmetic and accounting procedures. By using the standard library, students can develop real applications while learning the basics of programming to gain greater satisfaction. Using the standard library also enables students to understand the concept of code reuse. And third-party modules like PyGame can also help expand the reach of students.