PythonBeginner3 - 5 tháng

Python

Lộ trình phát triển toàn diện Python theo tiêu chuẩn quốc tế nilbuild/developer-roadmap

Hướng dẫn từng bước từ nền tảng đến chuyên sâu giúp bạn làm chủ Python. Tích hợp tài liệu lý thuyết, bài viết thực chiến, video tham khảo và bài tập lập trình trực tiếp trên IDE.

Giai đoạn:5 Phases
Mô-đun:86 Kỹ năng
Thực hành:86 Bài Lab IDE
Tiêu chuẩn:nilbuild/roadmap
⚡ Trình biên dịch IDE trực tuyến: Làm chủ kỹ năng thông qua thực hành viết mã và kiểm thử tự động.
Mở IDE Thực Hành Lộ Trình Này →
Bộ lọc:
Thành thạo:0% (0/0)
01
Giai đoạn 1Xây dựng tư duy kiến trúc và công cụ nền tảng

Nền Tảng & Khái Niệm Cốt Lõi

Giai đoạn 1 tập trung hoàn thiện 18 chủ đề then chốt.

Cốt lõiIDE Lab

@ (Matrix Multiplication Operator)

The @ symbol is a binary operator used to perform matrix multiplication between two objects, such as NumPy arrays or standard Python lists converted into matrices. Introduced in PEP 465, it provides a clean and readable syntax that distinguishes matrix multiplication from standard element-wise multiplication, which is typically handled by the asterisk (\*) operator.

@(MatrixEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

AIOHTTP

aiohttp is a Python 3.5+ library that provides a simple and powerful asynchronous HTTP client and server implementation.

AIOHTTPCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Arrays and Linked lists

Arrays store elements in contiguous memory locations, resulting in easily calculable addresses for the elements stored and this allows faster access to an element at a specific index. Linked lists are less rigid in their storage structure and elements are usually not stored in contiguous locations, hence they need to be stored with additional tags giving a reference to the next element. This difference in the data storage scheme decides which data structure would be more suitable for a given situation.

ArraysandEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Asynchrony

Asynchronous programming, supported by asyncio, allows code to be executed without blocking, using async and await. This is especially useful for I/O tasks such as networking or file manipulation, allowing thousands of connections to be handled without blocking the main thread.

AsynchronyCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Basic Syntax

Setup the environment for python and get started with the basics.

BasicSyntaxEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Binary Search Trees

A binary search tree, also called an ordered or sorted binary tree, is a rooted binary tree data structure with the key of each internal node being greater than all the keys in the respective node's left subtree and less than the ones in its right subtree

BinarySearchEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

black

Black is a python code formatter that automatically formats code according to a consistent style. By removing formatting decisions from developers, Black helps maintain uniform codebases, improves readability, and reduces time spent on style discussions during code reviews.

blackCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Builtin Modules

Python has a rich standard library of built-in modules that provide a wide range of functionality. Some of the most commonly used built-in modules include: sys, os, math, datetime, random, re, itertools, etc.

BuiltinModulesEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Classes

A class is a user-defined blueprint or prototype from which objects are created. Classes provide a means of bundling data and functionality together. Creating a new class creates a new type of object, allowing new instances of that type to be made. Each class instance can have attributes attached to it for maintaining its state. Class instances can also have methods (defined by their class) for modifying their state.

ClassesCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Code Formatting

Python code formatting is crucial for maintaining readability, consistency, and reducing errors. Black is a code formatter for Python. It is a tool that automatically formats Python code to adhere to the PEP 8 style guide. It is a great tool to use in your Python projects to ensure that your code is formatted consistently and correctly.

CodeFormattingEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Docstrings and Comments

Docstrings and comments document what code does and why. A docstring is a string literal placed right after a function, class, or module definition, and it becomes accessible through the object's **doc** attribute, which tools use to generate documentation automatically. Comments, marked with #, explain specific lines or blocks of code and are ignored by the interpreter. Docstrings typically describe the purpose, parameters, and return value of a function, while comments clarify tricky logic or note reasons behind a particular implementation choice.

DocstringsandEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

Common Packages and Modules

Python has a rich ecosystem of packages and modules that can be used to get the most out of the language. A package is essentially a directory that contains multiple modules and subpackages. A module is a single file that contains a collection of related functions, classes, and variables. Modules are the basic building blocks of Python code organization. A module can be thought of as a container that holds a set of related code.

CommonPackagesEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Concurrency

Concurrency in Python allows multiple tasks to be executed simultaneously using different approaches. GIL (Global Interpreter Lock) limits thread execution, making multithreading less efficient for computational tasks, but suitable for I/O. Multiprocessing, using the multiprocessing module, allows multiple cores to be utilized, providing true parallelism. Asynchrony via asyncio is optimal for I/O operations, allowing thousands of connections to be processed simultaneously without blocking. The choice of approach depends on the nature of the task.

ConcurrencyCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Conda

Conda is an open source package management system and environment management system that runs on Windows, macOS, and Linux. Conda quickly installs, runs and updates packages and their dependencies. Conda easily creates, saves, loads and switches between environments on your local computer. It was created for Python programs, but it can package and distribute software for any language.

CondaCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Conditionals

Conditional Statements in Python perform different actions depending on whether a specific condition evaluates to true or false. Conditional Statements are handled by _if-elif-else_ statements and MATCH-CASE statements in Python.

ConditionalsCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Context Manager

Context Managers are a construct in Python that allows you to set up context for a block of code, and then automatically clean up or release resources when the block is exited. It is most commonly used with the `with` statement.

ContextManagerEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Custom Modules

Modules refer to a file containing Python statements and definitions. A file containing Python code, for example: `example.py`, is called a module, and its module name would be example. We use modules to break down large programs into small manageable and organized files. Furthermore, modules provide reusability of code.

CustomModulesEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Data Structures and Algorithms

A data structure is a named location that can be used to store and organize data. And, an algorithm is a collection of steps to solve a particular problem. Learning data structures and algorithms allow us to write efficient and optimized computer programs.

DataStructuresEngineering
3 khái niệmChi tiết
02
Giai đoạn 2Làm chủ các thư viện, framework và luồng xử lý chính

Kỹ Năng Trọng Tâm & Thực Hành

Giai đoạn 2 tập trung hoàn thiện 18 chủ đề then chốt.

Cốt lõiIDE Lab

Decorators

Decorator is a design pattern in Python that allows a user to add new functionality to an existing object without modifying its structure. Decorators are usually called before the definition of a function you want to decorate.

DecoratorsCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Dictionaries

In Python, a dictionary is a built-in data type that allows you to store key-value pairs. Each key in the dictionary is unique, and each key is associated with a value. Starting from Python 3.7, dictionaries maintain the order of items as they were added.

DictionariesCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Django

Django is a free and open-source, Python-based web framework that follows the model–template–views architectural pattern. It is maintained by the Django Software Foundation, an independent organization established in the US as a 501 non-profit

DjangoCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Doctest

Python’s standard library comes equipped with a test framework module called doctest. The doctest module programmatically searches Python code for pieces of text within comments that look like interactive Python sessions. Then, the module executes those sessions to confirm that the code referenced by a doctest runs as expected.

DoctestCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Encapsulation

Encapsulation is a way to bundle data (attributes) and the methods that operate on that data into a single unit, known as a class. It restricts direct access to some of the object's components and prevents the accidental modification of data. This is achieved by declaring some attributes or methods as private, meaning they can only be accessed from within the class itself.

EncapsulationCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Exceptions

Exceptions are runtime errors that occur during program execution in Python. Instead of immediately stopping the program, Python allows developers to handle these errors using `try`, `except`, `else`, and `finally` blocks. Proper exception handling helps manage unexpected situations such as invalid input, missing files, or network failures, improving program reliability and allowing applications to fail gracefully.

ExceptionsCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

FastAPI

FastAPI is a modern Python web framework used for building APIs with high performance and automatic documentation. It leverages Python type hints for request validation, serialization, and editor support, making API development faster and less error-prone. FastAPI is commonly used for backend services, microservices, and machine learning model deployment due to its speed and ease of use.

FastAPICoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

File Handling in Python

File handling in Python involves reading data from and writing data to files. It allows programs to interact with files stored on a computer's storage. You can open files in different modes like read, write, or append, and then perform operations like reading the entire file content, reading line by line, or writing new data. A common use case is working with structured data, and Python provides built-in modules like `json` to easily read and write data in JSON format, which is frequently used for data exchange.

FileHandlingEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Flask

Flask is a micro web framework written in Python. It is classified as a microframework because it does not require particular tools or libraries. It has no database abstraction layer, form validation, or any other components where pre-existing third-party libraries provide common functions. Instead, it provides flexibility by requiring you to choose and integrate the best libraries for your project's needs.

FlaskCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Functions

In programming, a function is a reusable block of code that executes a certain functionality when it is called. Functions are integral parts of every programming language because they help make your code more modular and reusable. In Python, we define a function with the `def` keyword, then write the function identifier (name) followed by parentheses and a colon.

FunctionsCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Generator Expressions

Generator expressions are a concise way to create a generator using a single line of code in Python. They are similar to list comprehensions, but instead of creating a list, they create a generator object that produces the values on-demand, as they are needed. Generator expressions are a useful tool for efficiently producing large sequence of values, as they allow you to create the generator without creating the entire sequence in memory at once. This tends to use less memory, especially for large sequences.

GeneratorExpressionsEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

gevent

gevent is a Python library that provides a high-level interface to the event loop. It is based on non-blocking IO (libevent/libev) and lightweight greenlets. Non-blocking IO means requests waiting for network IO won't block other requests; greenlets mean we can continue to write code in synchronous style.

geventCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

GIL

GIL is a mechanism that allows only one thread to execute Python code at a time. This limitation is related to memory management in CPython and can reduce the efficiency of multithreaded applications on multi-core systems.

GILCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Glob Module in Python

The `glob` module in Python is a handy tool for finding files and directories whose names match a specific pattern. It uses Unix shell rules for pattern matching, allowing you to easily search for files with certain extensions, files starting with a particular name, or any other combination of criteria you define using wildcards. The main function in this module, also named `glob`, takes a pattern as input and returns a list of all the pathnames that match it.

GlobModuleEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

HashMaps

HashMap, HashTable, Map, Dictionary, or Associative are all the names of the same data structure. It is a data structure that implements a set abstract data type, a structure that can map keys to values.

HashMapsCoreEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

Heaps, Stacks, and Queues

Heaps, stacks, and queues are fundamental data structures used to organize and manage data efficiently based on specific rules of access. A stack follows the Last-In, First-Out (LIFO) principle, where the last element added is the first one removed, similar to a stack of plates. A queue operates on a First-In, First-Out (FIFO) basis, where the first element added is the first one removed, much like people waiting in a line. A heap is a specialized tree-based structure that maintains a specific order, typically allowing for the quick retrieval of either the smallest or largest element, making it ideal for priority-based tasks.

Heaps,Stacks,Engineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Inheritance

Inheritance is a fundamental concept in object-oriented programming where a new class (the child class or subclass) is derived from an existing class (the parent class or superclass). The child class inherits attributes and methods from the parent class, allowing for code reuse and the creation of hierarchical relationships between classes. This promotes a more organized and maintainable codebase by establishing a clear structure and reducing redundancy.

InheritanceCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Iterators

An iterator is an object that contains a countable number of values. An iterator is an object that can be iterated upon, meaning that you can traverse through all the values. Technically, in Python, an iterator is an object which implements the iterator protocol, which consist of the methods **iter**() and **next**() .

IteratorsCoreEngineering
2 khái niệmChi tiết
03
Giai đoạn 3Kỹ thuật chuyên sâu, hiệu năng và chuẩn thiết kế

Kiến Trúc Nâng Cao & Tối Ưu

Giai đoạn 3 tập trung hoàn thiện 18 chủ đề then chốt.

Cốt lõiIDE Lab

Lambdas

Python Lambda Functions are anonymous function means that the function is without a name. As we already know that the def keyword is used to define a normal function in Python. Similarly, the lambda keyword is used to define an anonymous function in Python.

LambdasCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Python Frameworks

Frameworks automate the common implementation of common solutions which gives the flexibility to the users to focus on the application logic instead of the basic routine processes. Frameworks make the life of web developers easier by giving them a structure for app development. They provide common patterns in a web application that are fast, reliable and easily maintainable.

PythonFrameworksEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Python

Python is a high-level, interpreted, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. Python is dynamically-typed and garbage-collected.

PythonCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

List Comprehensions

List comprehensions are a concise way to create a list using a single line of code in Python. They are a powerful tool for creating and manipulating lists, and they can be used to simplify and shorten code.

ListComprehensionsEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Lists in Python

Lists are fundamental data structures in Python used to store an ordered collection of items. These items can be of different data types (numbers, strings, or even other lists), and lists are mutable, meaning you can change their contents after they are created by adding, removing, or modifying elements. They are defined using square brackets `[]` and elements are separated by commas.

ListsinEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

Loops

Loops are programming structures that allow you to execute a block of code repeatedly as long as a specific condition remains true or for a set number of iterations. In Python, the two primary types of loops are `for` loops, which are typically used to iterate over a sequence like a list, tuple, or string, and `while` loops, which continue running until a defined logical condition evaluates to false. These tools are essential for automating repetitive tasks and processing collections of data efficiently within your programs.

LoopsCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Methods and Dunder Methods

Methods are functions defined within a class that describe the behaviors or actions an object can perform. Dunder methods, short for "double underscore" methods, are special built-in methods—such as `__init__` or `__str__`—that allow you to define how your objects interact with Python’s built-in operations and syntax. By implementing these methods, you can customize how objects are initialized, represented as strings, compared, or used with mathematical operators.

MethodsandEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Modules

Modules refer to a file containing Python statements and definitions. A file containing Python code, for example: `example.py`, is called a module, and its module name would be example. We use modules to break down large programs into small manageable and organized files. Furthermore, modules provide reusability of code.

ModulesCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Multiprocessing

Multiprocessing utilizes multiple processes, each with its own GIL. This allows full utilization of multiple processor cores, which is effective for computationally intensive tasks. Python's multiprocessing module supports creating processes and exchanging data between them.

MultiprocessingCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

mypy

mypy is an optional static type checker for Python that aims to combine the benefits of dynamic (or "duck") typing and static typing. Mypy combines the expressive power and convenience of Python with a powerful type system and compile-time type checking. Mypy type checks standard Python programs; run them using any Python VM with basically no runtime overhead.

mypyCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

OOP

In Python, object-oriented Programming (OOPs) is a programming paradigm that uses objects and classes in programming. It aims to implement real-world entities like inheritance, polymorphism, encapsulation, etc., in programming. The main concept of OOPs is to bind the data and the functions that work on that together as a single unit so that no other part of the code can access this data.

OOPCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Operators

Operators are symbols or keywords that perform operations on values and variables. Python includes several types: arithmetic operators (+, -, \*, /) for math calculations, comparison operators (==, !=, <, >) for evaluating relationships between values, and logical operators (and, or, not) for combining conditions. There are also assignment operators (=, +=, -=) for storing and updating values, bitwise operators for working with binary data, and membership operators (in, not in) for checking whether a value exists within a sequence like a list or string.

OperatorsCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Package Managers

Package managers allow you to manage the dependencies (external code written by you or someone else) that your project needs to work correctly. `PyPI` and `Pip` are the most common contenders but there are some other options available as well.

PackageManagersEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Paradigms

Paradigms are fundamental styles or approaches to programming that dictate how a developer organizes and executes code. They define the structural logic of a program, offering different ways to solve problems by choosing how to represent data and functions. In Python, these paradigms—such as object-oriented, procedural, and functional programming—can be used individually or combined, allowing developers to choose the most effective strategy for the specific task at hand.

ParadigmsCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

PDM

PDM is a modern Python package manager that supports PEP 582, which allows packages to be installed in a `__pypackages__` directory instead of the traditional `site-packages` directory. It aims to provide a streamlined and improved experience for managing dependencies, building, and publishing Python projects. PDM also includes features like dependency resolution, virtual environment management, and project scaffolding.

PDMCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Pip

The standard package manager for Python is pip. It allows you to install and manage packages that aren’t part of the Python standard library.

PipCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

pipenv

Pipeline Environment (pipenv) is a tool that aims to bring the best of all packaging worlds (bundled, requirements.txt, [setup.py](https://docs.python.org/3.11/distutils/setupscript.html), setup.cfg, etc.) to the Python world. It automatically creates and manages a virtualenv for your projects, as well as adds/removes packages from your Pipfile as you install/uninstall packages. It also generates the ever-important Pipfile.lock, which is used to produce deterministic builds.

pipenvCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Plotly Dash

Plotly Dash is a Python framework that allows you to build analytical web applications. It's a high-level library that enables you to create interactive, web-based data visualization dashboards without requiring extensive knowledge of web development.

PlotlyDashEngineering
1 khái niệmChi tiết
04
Giai đoạn 4Kiểm thử, CI/CD, đám mây và quy chuẩn sản xuất

Hệ Sinh Thái & Triển Khai Thực Tế

Giai đoạn 4 tập trung hoàn thiện 18 chủ đề then chốt.

Cốt lõiIDE Lab

Poetry

Poetry is a dependency management and packaging tool that simplifies the process of handling libraries and project builds in a single configuration file. It manages virtual environments automatically and uses a lock file to ensure that every developer on a project uses the exact same version of every dependency. It provides a unified workflow for managing complex project structures.

PoetryCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Pydantic

Pydantic is a Python library for data validation and settings management using Python type annotations. It enforces type hints at runtime and provides clear, user-friendly error messages when data is invalid. Pydantic is widely used in FastAPI for request body parsing, and in CLI and configuration tools for parsing environment variables and config files via `BaseSettings`. At its core, you define a model by subclassing `BaseModel` and annotating fields with types — Pydantic handles all coercion, validation, and serialization automatically.

PydanticCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

pyenv

pyenv is a tool for managing multiple versions of the Python programming language on Unix-like systems. It works by setting environment variables to point to the directory where the desired version of Python is installed. This allows you to switch between different versions of Python without having to modify your system's default Python installation.

pyenvCoreEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

PyPI

PyPI, typically pronounced pie-pee-eye, is a repository containing several hundred thousand packages. These range from trivial Hello, World implementations to advanced deep learning libraries.

PyPICoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

pyproject.toml

This file is used to define the project configuration and dependencies. It is a configuration file that contains metadata about the project, such as its name, version, dependencies, and build settings. The `pyproject.toml` file is used by tools like `poetry` and `flit` to manage Python projects and their dependencies.

pyproject.tomlCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Pyramid

Pyramid is a general, open source, web application development framework built in python. It allows python developer to create web applications with ease. Pyramid is backed by the enterprise knowledge Management System KARL (a George Soros project).

PyramidCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

pyrefly

pyrefly is a static type checker for Python. It is a tool that helps you find type errors in your Python code. Pyre is designed to be fast, scalable, and easy to use. It is used at Facebook to help developers catch type errors before they make it to production.

pyreflyCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

pyright

pyright is a static type checker for Python. It is a Microsoft product and is written in TypeScript. It is a language server that uses the Language Server Protocol (LSP) to communicate with the editor. It is a good alternative to mypy and pytype.

pyrightCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

pytest

pytest is a mature full-featured Python testing tool that helps you write better programs.

pytestCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Recursion

Recursion is a method of solving a computational problem where the solution depends on solutions to smaller instances of the same problem. Recursion solves such recursive problems by using functions that call themselves from within their own code.

RecursionCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Regular Expressions

A regular expression is a sequence of characters that specifies a search pattern in text. Usually such patterns are used by string-searching algorithms for "find" or "find and replace" operations on strings, or for input validation.

RegularExpressionsEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

ruff

Ruff is a fast Python linter and code quality tool written in Rust that combines the functionality of multiple linting and formatting tools into a single, high-performance utility. It helps detect errors, enforce coding standards, and improve code quality while running significantly faster than traditional Python linters.

ruffCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Sanic

Sanic is a Python 3.8+ web server and web framework designed for speed. It fully supports the `async`/`await` syntax introduced in Python 3.5, allowing you to write non-blocking request handlers that can handle thousands of concurrent connections efficiently. Unlike traditional synchronous frameworks, Sanic uses `uvloop` under the hood for its event loop, making it one of the fastest Python web frameworks available. It supports features like Blueprints for route grouping, WebSockets, middleware, streaming responses, and a built-in static file server, making it a strong choice for building high-performance APIs and real-time applications.

SanicCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

Sets

Python Set is an unordered collection of data types that is iterable, mutable, and has no duplicate elements. The order of elements in a set is undefined though it may consist of various elements. The major advantage of using a set, as opposed to a list, is that it has a highly optimized method for checking whether a specific element is contained in the set.

SetsCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Sorting Algorithms

Sorting refers to arranging data in a particular format. Sorting algorithm specifies the way to arrange data in a particular order. Most common orders are in numerical or lexicographical order. The importance of sorting lies in the fact that data searching can be optimized to a very high level, if data is stored in a sorted manner.

SortingAlgorithmsEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

sphinx

Sphinx is a tool that makes it easy to create intelligent and beautiful documentation, written by Georg Brandl and licensed under the BSD license.

sphinxCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Static Typing

Static typing can be a powerful tool to help you catch bugs before they happen. It can also help you understand the code you're working with, and make it easier to maintain and refactor.

StaticTypingEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

Testing

Testing in programming means checking if your code works as expected. It's a systematic way to find and fix errors (bugs) before your code goes live. Imagine building a beautiful house without checking if the walls are straight or the roof doesn't leak—that's what coding without testing can feel like!

TestingCoreEngineering
2 khái niệmChi tiết
05
Giai đoạn 5Các giải pháp quy mô lớn và tư duy dẫn dắt kỹ thuật

Chuyên Gia & Mở Rộng Hệ Thống

Giai đoạn 5 tập trung hoàn thiện 14 chủ đề then chốt.

Cốt lõiIDE Lab

Threading

[Multithreading](https://roadmap.sh/python/multithreading) allows multiple threads within a single process. However, because of GIL, threads cannot run in parallel on different cores, which makes multithreading suitable for I/O tasks (e.g., network requests) but not for computational tasks.

ThreadingCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Tornado

Tornado is a scalable, non-blocking web server and web application framework written in Python. It was developed for use by FriendFeed; the company was acquired by Facebook in 2009 and Tornado was open-sourced soon after.

TornadoCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Tox

Tox is a tool for automating test environment management and testing against multiple interpreter configurations. It is particularly useful for Python codebase that need to support multiple versions of Python.

ToxCoreEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

Tuples

A tuple is an ordered and immutable collection of elements in Python. Unlike lists, tuples cannot be modified after creation, making them useful for storing fixed data such as coordinates, configuration values, or records that should remain unchanged. Tuples support indexing, iteration, and unpacking, and because they are immutable, they can also be used as dictionary keys or returned safely from functions as multiple values.

TuplesCoreEngineering
1 khái niệmChi tiết
Cốt lõiIDE Lab

Type Annotations

Type annotations let developers specify the expected data types of variables, function parameters, and return values in Python. The interpreter does not enforce these hints at runtime, but tools like mypy and pyright use them to catch type errors before execution. A function can declare def add(a: int, b: int) -> int: to signal that it expects integers and returns one. Type annotations make code easier to read and help catch bugs early, especially in larger codebases.

TypeAnnotationsEngineering
2 khái niệmChi tiết
Khuyên họcIDE Lab

Typecasting

The process of converting the value of one data type (integer, string, float, etc.) to another data type is called type conversion. Python has two types of type conversion: Implicit and Explicit.

TypecastingCoreEngineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

Typing

The `typing` module provides support for type hints in Python, allowing developers to specify expected data types for variables, function parameters, and return values. Type hints improve code readability, enable better editor support and static analysis, and help catch potential bugs early without changing how Python executes programs at runtime.

TypingCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

PyUnit / Unittest

PyUnit is an easy way to create unit testing programs and UnitTests with Python. (Note that [docs.python.org](http://docs.python.org) uses the name "unittest", which is also the module name.)

PyUnit/Engineering
3 khái niệmChi tiết
Cốt lõiIDE Lab

uv

uv is an "extremely fast" python package installer and resolver.

uvCoreEngineering
1 khái niệmChi tiết
Khuyên họcIDE Lab

Variable Scope

Variable scope refers to the region of a program where a particular variable can be accessed. It determines the visibility and lifetime of a variable. Understanding scope is crucial for avoiding naming conflicts and ensuring that variables are used correctly within different parts of your code.

VariableScopeEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Variables

Variables are used to store information to be referenced and manipulated in a computer program. They also provide a way of labeling data with a descriptive name, so our programs can be understood more clearly by the reader and ourselves. It is helpful to think of variables as containers that hold information. Their sole purpose is to label and store data in memory. This data can then be used throughout your program.

VariablesCoreEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

virtualenv

`virtualenv` is a tool to create isolated Python environments. It creates a folder which contains all the necessary executables to use the packages that a Python project would need.

virtualenvCoreEngineering
2 khái niệmChi tiết
Cốt lõiIDE Lab

Working with Strings

Strings in Python are sequences of characters used to represent text. You can create them by enclosing characters within single quotes, double quotes, or triple quotes. Once created, strings are immutable, meaning their values cannot be changed directly. Common operations include accessing individual characters using indexing, slicing to extract substrings, concatenating strings using the `+` operator, and using built-in methods to manipulate and format the text they contain.

WorkingwithEngineering
3 khái niệmChi tiết
Khuyên họcIDE Lab

yapf

yapf is a formatter for Python files. It is a tool that automatically formats Python code to conform to the PEP 8 style guide. It is similar to black but has more configuration options.

yapfCoreEngineering
3 khái niệmChi tiết