[Go to site: main page, start]

0% found this document useful (0 votes)
163 views4 pages

Python 3.13.2 Official Tutorial

The Python Tutorial provides an informal introduction to the Python programming language, highlighting its easy-to-learn syntax and powerful features. It covers essential concepts, data structures, control flow tools, and modules, while encouraging hands-on experience with the Python interpreter. The tutorial is not exhaustive but offers a solid foundation for further exploration of Python's capabilities and libraries.

Uploaded by

robesaabaya76
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
163 views4 pages

Python 3.13.2 Official Tutorial

The Python Tutorial provides an informal introduction to the Python programming language, highlighting its easy-to-learn syntax and powerful features. It covers essential concepts, data structures, control flow tools, and modules, while encouraging hands-on experience with the Python interpreter. The tutorial is not exhaustive but offers a solid foundation for further exploration of Python's capabilities and libraries.

Uploaded by

robesaabaya76
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

2/14/25, 7:31 AM The Python Tutorial — Python 3.13.

2 documentation

The Python Tutorial


Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple
but effective approach to object-oriented programming. Python’s elegant syntax and dynamic typing, together
with its interpreted nature, make it an ideal language for scripting and rapid application development in many ar‐
eas on most platforms.

The Python interpreter and the extensive standard library are freely available in source or binary form for all major
platforms from the Python web site, [Link] and may be freely distributed. The same site also
contains distributions of and pointers to many free third party Python modules, programs and tools, and addi‐
tional documentation.

The Python interpreter is easily extended with new functions and data types implemented in C or C++ (or other
languages callable from C). Python is also suitable as an extension language for customizable applications.

This tutorial introduces the reader informally to the basic concepts and features of the Python language and sys‐
tem. It helps to have a Python interpreter handy for hands-on experience, but all examples are self-contained, so
the tutorial can be read off-line as well.

For a description of standard objects and modules, see The Python Standard Library. The Python Language
Reference gives a more formal definition of the language. To write extensions in C or C++, read Extending and
Embedding the Python Interpreter and Python/C API Reference Manual. There are also several books covering
Python in depth.

This tutorial does not attempt to be comprehensive and cover every single feature, or even every commonly used
feature. Instead, it introduces many of Python’s most noteworthy features, and will give you a good idea of the
language’s flavor and style. After reading it, you will be able to read and write Python modules and programs, and
you will be ready to learn more about the various Python library modules described in The Python Standard
Library.

The Glossary is also worth going through.

1. Whetting Your Appetite


2. Using the Python Interpreter
2.1. Invoking the Interpreter
2.1.1. Argument Passing
2.1.2. Interactive Mode
2.2. The Interpreter and Its Environment
2.2.1. Source Code Encoding
3. An Informal Introduction to Python
3.1. Using Python as a Calculator
3.1.1. Numbers
3.1.2. Text

[Link] 1/4
2/14/25, 7:31 AM The Python Tutorial — Python 3.13.2 documentation

3.1.3. Lists
3.2. First Steps Towards Programming
4. More Control Flow Tools
4.1. if Statements
4.2. for Statements
4.3. The range() Function
4.4. break and continue Statements
4.5. else Clauses on Loops
4.6. pass Statements
4.7. match Statements
4.8. Defining Functions
4.9. More on Defining Functions
4.9.1. Default Argument Values
4.9.2. Keyword Arguments
4.9.3. Special parameters
[Link]. Positional-or-Keyword Arguments
[Link]. Positional-Only Parameters
[Link]. Keyword-Only Arguments
[Link]. Function Examples
[Link]. Recap
4.9.4. Arbitrary Argument Lists
4.9.5. Unpacking Argument Lists
4.9.6. Lambda Expressions
4.9.7. Documentation Strings
4.9.8. Function Annotations
4.10. Intermezzo: Coding Style
5. Data Structures
5.1. More on Lists
5.1.1. Using Lists as Stacks
5.1.2. Using Lists as Queues
5.1.3. List Comprehensions
5.1.4. Nested List Comprehensions
5.2. The del statement
5.3. Tuples and Sequences
5.4. Sets
5.5. Dictionaries
5.6. Looping Techniques
5.7. More on Conditions
5.8. Comparing Sequences and Other Types
6. Modules
6.1. More on Modules
6.1.1. Executing modules as scripts
6.1.2. The Module Search Path

[Link] 2/4
2/14/25, 7:31 AM The Python Tutorial — Python 3.13.2 documentation

6.1.3. “Compiled” Python files


6.2. Standard Modules
6.3. The dir() Function
6.4. Packages
6.4.1. Importing * From a Package
6.4.2. Intra-package References
6.4.3. Packages in Multiple Directories
7. Input and Output
7.1. Fancier Output Formatting
7.1.1. Formatted String Literals
7.1.2. The String format() Method
7.1.3. Manual String Formatting
7.1.4. Old string formatting
7.2. Reading and Writing Files
7.2.1. Methods of File Objects
7.2.2. Saving structured data with json
8. Errors and Exceptions
8.1. Syntax Errors
8.2. Exceptions
8.3. Handling Exceptions
8.4. Raising Exceptions
8.5. Exception Chaining
8.6. User-defined Exceptions
8.7. Defining Clean-up Actions
8.8. Predefined Clean-up Actions
8.9. Raising and Handling Multiple Unrelated Exceptions
8.10. Enriching Exceptions with Notes
9. Classes
9.1. A Word About Names and Objects
9.2. Python Scopes and Namespaces
9.2.1. Scopes and Namespaces Example
9.3. A First Look at Classes
9.3.1. Class Definition Syntax
9.3.2. Class Objects
9.3.3. Instance Objects
9.3.4. Method Objects
9.3.5. Class and Instance Variables
9.4. Random Remarks
9.5. Inheritance
9.5.1. Multiple Inheritance
9.6. Private Variables
9.7. Odds and Ends
9.8. Iterators

[Link] 3/4
2/14/25, 7:31 AM The Python Tutorial — Python 3.13.2 documentation

9.9. Generators
9.10. Generator Expressions
10. Brief Tour of the Standard Library
10.1. Operating System Interface
10.2. File Wildcards
10.3. Command Line Arguments
10.4. Error Output Redirection and Program Termination
10.5. String Pattern Matching
10.6. Mathematics
10.7. Internet Access
10.8. Dates and Times
10.9. Data Compression
10.10. Performance Measurement
10.11. Quality Control
10.12. Batteries Included
11. Brief Tour of the Standard Library — Part II
11.1. Output Formatting
11.2. Templating
11.3. Working with Binary Data Record Layouts
11.4. Multi-threading
11.5. Logging
11.6. Weak References
11.7. Tools for Working with Lists
11.8. Decimal Floating-Point Arithmetic
12. Virtual Environments and Packages
12.1. Introduction
12.2. Creating Virtual Environments
12.3. Managing Packages with pip
13. What Now?
14. Interactive Input Editing and History Substitution
14.1. Tab Completion and History Editing
14.2. Alternatives to the Interactive Interpreter
15. Floating-Point Arithmetic: Issues and Limitations
15.1. Representation Error
16. Appendix
16.1. Interactive Mode
16.1.1. Error Handling
16.1.2. Executable Python Scripts
16.1.3. The Interactive Startup File
16.1.4. The Customization Modules

[Link] 4/4

Common questions

Powered by AI

The key difference between keyword and positional arguments is that positional arguments are passed to functions in the order they are defined, whereas keyword arguments are passed by specifying each argument's name explicitly. Keyword arguments enhance readability and allow arguments to be passed out of order of their definition, as well as provide default values that can be overridden, thereby increasing the flexibility and clarity of function calls .

Python manages namespaces using dictionaries that map variable names to objects. There are several types of namespaces: local (within a function), enclosing (within nested functions), global (in the module level), and built-in. The scope of a variable determines where the variable can be accessed, adhering to the LEGB rule (Local, Enclosing, Global, Built-in). Implications for variable scope include the potential for variable shadowing and confusion in multi-nested scopes, affecting how functions and modules must be structured to access or modify variables correctly .

Python's interpreted nature allows it to run directly from the source code without the need for prior compilation. This means the same codebase can be executed on any platform with a compatible Python interpreter installed, which simplifies cross-platform development. Developers do not need to recompile or modify the code for different operating systems, ensuring both speed and compatibility across numerous platforms .

Python's standard library is extensive, providing modules and functions for various tasks such as file I/O, system calls, and web services, among others. This breadth of functionality allows developers to solve many common programming problems without needing to rely on external libraries, which is why it's described as "batteries included." This built-in capability means developers can achieve a lot with minimal additional resources, enhancing productivity and reducing dependency on third-party modules .

Python's handling of errors and exceptions provides structured ways for developers to deal with anomalous situations without crashing the program. Through mechanisms like try-except blocks, raising exceptions, and defining custom exception classes, Python promotes writing robust code that anticipates and handles potential errors gracefully, improving overall reliability. Exception chaining and clean-up actions further ensure that resources are appropriately managed and freed, enhancing maintainability .

Several aspects make Python easy to learn for beginners: its elegant syntax resembling human language, minimalistic approach to punctuation, dynamic typing, and extensive standard library that covers a broad range of practical problems. These features allow new programmers to achieve functional outcomes with less code and understand programming concepts without being overwhelmed by complex syntactic rules or boilerplate code .

Python's dynamic typing allows variables to change types dynamically during execution, which reduces the need for declaring variable types explicitly. This flexibility facilitates quick prototyping and iteration, making Python particularly well-suited for scripting and rapid application development. Developers can focus more on coding logic and functionality without being bogged down by type definitions, thus accelerating the development process .

Python handles multiple inheritance through its Method Resolution Order (MRO) system, which uses the C3 linearization algorithm to define the order in which base classes are considered. While this flexibility allows for powerful mixin patterns and combining functionality from multiple sources, it can lead to complexity in class hierarchies and make it difficult to predict the source of inherited attributes and methods, potentially leading to ambiguous or unintended behavior .

Python can be extended with new functions and data types through integration with C or C++. The Python interpreter exposes a C API, allowing developers to write extension modules that incorporate performance-critical components in C/C++. This extensibility benefits applications by enabling the inclusion of highly efficient compiled code, which can execute faster and handle more complex operations than interpreted Python code alone .

List comprehensions are more advantageous than traditional loops when you want to create new lists by applying an expression to each item in a sequence and optionally filtering items using conditional statements. They offer concise and readable syntax that reduces the lines of code needed for list transformations. This not only enhances clarity but also can be more efficient because list comprehensions are optimized for performance in Python .

You might also like