Chuyển từ điển python qua tham chiếu

Dấu nhắc Python mặc định của shell tương tác. Thường thấy đối với các ví dụ mã có thể được thực thi tương tác trong trình thông dịch

callable[argument1, argument2, ...]

có thể tham khảo

  • Dấu nhắc Python mặc định của shell tương tác khi nhập mã cho một khối mã thụt lề, khi nằm trong một cặp dấu phân cách trái và phải phù hợp [dấu ngoặc đơn, dấu ngoặc vuông, dấu ngoặc nhọn hoặc dấu ngoặc kép] hoặc sau khi chỉ định một trình trang trí

  • Hằng số tích hợp sẵn

    callable[argument1, argument2, ...]
    
    2

2to3¶

Một công cụ cố gắng chuyển đổi Python 2. mã x sang Python 3. x bằng cách xử lý hầu hết các điểm không tương thích có thể được phát hiện bằng cách phân tích cú pháp nguồn và duyệt qua cây phân tích cú pháp

2to3 có sẵn trong thư viện tiêu chuẩn là

callable[argument1, argument2, ...]
3; . Xem 2to3 — Dịch mã Python 2 sang 3 tự động .

lớp cơ sở trừu tượng¶

Các lớp cơ sở trừu tượng bổ sung cho kiểu gõ vịt bằng cách cung cấp một cách để xác định giao diện khi các kỹ thuật khác như

callable[argument1, argument2, ...]
5 sẽ vụng về hoặc sai một cách tinh vi [vì . ABC giới thiệu các lớp con ảo, là các lớp không kế thừa từ một lớp nhưng vẫn được công nhận bởi
callable[argument1, argument2, ...]
6 và
callable[argument1, argument2, ...]
7; . Python đi kèm với nhiều ABC tích hợp sẵn cho cấu trúc dữ liệu [trong mô-đun
callable[argument1, argument2, ...]
9], số [trong mô-đun
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
0], luồng [trong mô-đun
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
1], trình tìm và tải nhập [trong mô-đun
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
2]. Bạn có thể tạo ABC của riêng mình với mô-đun
callable[argument1, argument2, ...]
8. magic methods]. ABCs introduce virtual subclasses, which are classes that don’t inherit from a class but are still recognized by
callable[argument1, argument2, ...]
6 and
callable[argument1, argument2, ...]
7; see the
callable[argument1, argument2, ...]
8 module documentation. Python comes with many built-in ABCs for data structures [in the
callable[argument1, argument2, ...]
9 module], numbers [in the
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
0 module], streams [in the
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
1 module], import finders and loaders [in the
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
2 module]. You can create your own ABCs with the
callable[argument1, argument2, ...]
8 module.

chú thích¶

Nhãn được liên kết với một biến, thuộc tính lớp hoặc tham số hàm hoặc giá trị trả về, được sử dụng theo quy ước dưới dạng gợi ý loại .

Chú thích của biến cục bộ không thể được truy cập trong thời gian chạy, nhưng chú thích của biến toàn cục, thuộc tính lớp và hàm được lưu trữ trong thuộc tính đặc biệt

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
4 của mô-đun, lớp và hàm tương ứng

Xem chú thích biến , chú thích hàm , PEP 484 . Ngoài ra, hãy xem Các phương pháp hay nhất về chú thích để biết các phương pháp hay nhất khi làm việc với chú thích.

tranh luận¶

Một giá trị được truyền cho một hàm [hoặc phương thức . Có hai loại lập luận.

  • đối số từ khóa. một đối số đứng trước một mã định danh [e. g.

    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    5] trong lời gọi hàm hoặc được truyền dưới dạng giá trị trong từ điển trước
    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    6. Ví dụ:
    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    7 và
    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    8 đều là đối số từ khóa trong các lệnh gọi sau tới
    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    9

    callable[argument1, argument2, ...]
    
    9

  • đối số vị trí. một đối số không phải là một đối số từ khóa. Đối số vị trí có thể xuất hiện ở đầu danh sách đối số và/hoặc được chuyển dưới dạng thành phần của có thể lặp lại trước

    callable[argument1, argument2, ...]
    
    00. Ví dụ:
    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    7 và
    def f[arg]:
        ...
    f = staticmethod[f]
    
    @staticmethod
    def f[arg]:
        ...
    
    8 đều là đối số vị trí trong các cuộc gọi sau.

    callable[argument1, argument2, ...]
    
    3

Các đối số được gán cho các biến cục bộ được đặt tên trong thân hàm. Xem phần Cuộc gọi để biết các quy tắc chi phối nhiệm vụ này. Về mặt cú pháp, bất kỳ biểu thức nào cũng có thể được sử dụng để biểu thị một đối số; .

Cũng xem mục tham số , câu hỏi thường gặp về sự khác biệt giữa đối số và tham số< . , and PEP 362.

trình quản lý bối cảnh không đồng bộ¶

Một đối tượng kiểm soát môi trường được thấy trong câu lệnh

callable[argument1, argument2, ...]
03 bằng cách xác định các phương thức
callable[argument1, argument2, ...]
04 và
callable[argument1, argument2, ...]
05. Được giới thiệu bởi PEP 492

máy phát điện không đồng bộ¶

Một hàm trả về một trình lặp trình tạo không đồng bộ . Nó trông giống như một hàm coroutine được xác định bằng

callable[argument1, argument2, ...]
06 ngoại trừ việc nó chứa các biểu thức
callable[argument1, argument2, ...]
07 để tạo ra một chuỗi các giá trị có thể sử dụng được trong vòng lặp
callable[argument1, argument2, ...]
08.

Thường đề cập đến hàm tạo không đồng bộ, nhưng có thể đề cập đến trình lặp trình tạo không đồng bộ trong một số ngữ cảnh. Trong trường hợp ý nghĩa dự định không rõ ràng, hãy sử dụng các thuật ngữ đầy đủ để tránh sự mơ hồ

Một hàm tạo không đồng bộ có thể chứa các biểu thức

callable[argument1, argument2, ...]
09 cũng như các câu lệnh
callable[argument1, argument2, ...]
08 và
callable[argument1, argument2, ...]
03

bộ lặp máy phát điện không đồng bộ¶

Một đối tượng được tạo bởi một hàm tạo không đồng bộ .

Đây là trình lặp không đồng bộ mà khi được gọi bằng phương thức

callable[argument1, argument2, ...]
32 sẽ trả về một đối tượng có thể chờ đợi, đối tượng này sẽ thực thi phần thân của hàm tạo không đồng bộ cho đến khi .

Mỗi

callable[argument1, argument2, ...]
07 tạm thời ngừng xử lý, ghi nhớ trạng thái thực thi vị trí [bao gồm các biến cục bộ và câu lệnh thử đang chờ xử lý]. Khi trình vòng lặp trình tạo không đồng bộ tiếp tục một cách hiệu quả với một cái khác có thể chờ được trả về bởi
callable[argument1, argument2, ...]
32, nó sẽ tiếp tục ở nơi nó dừng lại. Xem PEP 492 và PEP 525

iterable không đồng bộ¶

Một đối tượng, có thể được sử dụng trong câu lệnh

callable[argument1, argument2, ...]
08. Phải trả về một trình lặp không đồng bộ từ phương thức
callable[argument1, argument2, ...]
37 của nó. Được giới thiệu bởi PEP 492.

iterator không đồng bộ¶

Một đối tượng triển khai các phương thức

callable[argument1, argument2, ...]
37 và
callable[argument1, argument2, ...]
32.
callable[argument1, argument2, ...]
10 phải trả về một đối tượng awaitable .
callable[argument1, argument2, ...]
08 giải quyết các đối tượng chờ được trả về bởi phương thức
callable[argument1, argument2, ...]
32 của trình lặp không đồng bộ cho đến khi nó tăng ngoại lệ
callable[argument1, argument2, ...]
13. Được giới thiệu bởi PEP 492.

thuộc tính¶

Một giá trị được liên kết với một đối tượng thường được tham chiếu theo tên bằng các biểu thức chấm. Ví dụ: nếu một đối tượng o có thuộc tính a thì nó sẽ được tham chiếu là o. a

Có thể cung cấp cho đối tượng một thuộc tính có tên không phải là số nhận dạng như được xác định bởi Số nhận dạng và từ khóa , chẳng hạn như sử dụng

callable[argument1, argument2, ...]
14, . Một thuộc tính như vậy sẽ không thể truy cập được bằng cách sử dụng biểu thức chấm và thay vào đó sẽ cần được truy xuất bằng
callable[argument1, argument2, ...]
15.

chờ đợi¶

Một đối tượng có thể được sử dụng trong biểu thức

callable[argument1, argument2, ...]
09. Có thể là một coroutine hoặc một đối tượng có phương thức
callable[argument1, argument2, ...]
17. Xem thêm PEP 492.

BDFL¶

Nhà độc tài nhân từ suốt đời, một. k. a. Guido van Rossum, người tạo ra Python

tập tin nhị phân¶

A đối tượng tệp có thể đọc và ghi đối tượng dạng byte. Examples of binary files are files opened in binary mode [

callable[argument1, argument2, ...]
18,
callable[argument1, argument2, ...]
19 or
callable[argument1, argument2, ...]
10],
callable[argument1, argument2, ...]
11,
callable[argument1, argument2, ...]
12, and instances of
callable[argument1, argument2, ...]
13 and
callable[argument1, argument2, ...]
14.

Xem thêm tệp văn bản để biết đối tượng tệp có thể đọc và ghi đối tượng

callable[argument1, argument2, ...]
15.

tài liệu tham khảo mượn¶

Trong API C của Python, tham chiếu mượn là tham chiếu đến một đối tượng. Nó không sửa đổi số lượng tham chiếu đối tượng. Nó trở thành con trỏ lơ lửng nếu đối tượng bị hủy. Ví dụ: bộ sưu tập rác có thể xóa tham chiếu mạnh cuối cùng của đối tượng và do đó hủy đối tượng đó.

Bạn nên gọi

callable[argument1, argument2, ...]
16 trên tham chiếu mượn để chuyển đổi nó thành tham chiếu mạnh in-place, except when the object cannot be destroyed before the last usage of the borrowed reference. The
callable[argument1, argument2, ...]
17 function can be used to create a new tham chiếu mạnh mới.

đối tượng dạng byte¶

Một đối tượng hỗ trợ Giao thức bộ đệm và có thể xuất C- liên tục buffer. This includes all

callable[argument1, argument2, ...]
18,
callable[argument1, argument2, ...]
19, and
callable[argument1, argument2, ...]
10 objects, as well as many common
callable[argument1, argument2, ...]
11 objects. Bytes-like objects can be used for various operations that work with binary data; these include compression, saving to a binary file, and sending over a socket.

Một số hoạt động cần dữ liệu nhị phân có thể thay đổi. Tài liệu này thường gọi chúng là “các đối tượng giống byte đọc-ghi”. Các đối tượng bộ đệm có thể thay đổi ví dụ bao gồm

callable[argument1, argument2, ...]
19 và một
callable[argument1, argument2, ...]
11 của một
callable[argument1, argument2, ...]
19. Các hoạt động khác yêu cầu dữ liệu nhị phân được lưu trữ trong các đối tượng không thể thay đổi [“đối tượng giống như byte chỉ đọc”];

mã byte¶

Mã nguồn Python được biên dịch thành mã byte, biểu diễn bên trong của chương trình Python trong trình thông dịch CPython. Mã byte cũng được lưu trong bộ đệm trong các tệp

callable[argument1, argument2, ...]
18 để việc thực thi cùng một tệp nhanh hơn lần thứ hai [có thể tránh được việc biên dịch lại từ mã nguồn sang mã byte]. “Ngôn ngữ trung gian” này được cho là chạy trên một máy ảo thực thi mã máy tương ứng với từng mã byte. Xin lưu ý rằng mã byte dự kiến ​​sẽ không hoạt động giữa các máy ảo Python khác nhau, cũng như không ổn định giữa các bản phát hành Python.

Bạn có thể tìm thấy danh sách hướng dẫn mã byte trong tài liệu dành cho mô-đun dis .

gọi được¶

Có thể gọi được là một đối tượng có thể được gọi, có thể bằng một tập hợp các đối số [xem đối số ], với cú pháp sau.

callable[argument1, argument2, ...]

A hàm và bằng cách mở rộng một phương thức , . Một thể hiện của một lớp triển khai phương thức

callable[argument1, argument2, ...]
19 cũng có thể gọi được.

gọi lại¶

Một hàm chương trình con được truyền dưới dạng đối số sẽ được thực thi tại một thời điểm nào đó trong tương lai

lớp¶

Một mẫu để tạo các đối tượng do người dùng định nghĩa. Các định nghĩa lớp thường chứa các định nghĩa phương thức hoạt động trên các thể hiện của lớp

biến lớp¶

Một biến được định nghĩa trong một lớp và chỉ được sửa đổi ở cấp độ lớp [i. e. , không phải trong một thể hiện của lớp]

số phức¶

Một phần mở rộng của hệ thống số thực quen thuộc, trong đó tất cả các số được biểu thị dưới dạng tổng của một phần thực và một phần ảo. Số ảo là bội số thực của đơn vị ảo [căn bậc hai của

callable[argument1, argument2, ...]
20], thường được viết là
callable[argument1, argument2, ...]
21 trong toán học hoặc
callable[argument1, argument2, ...]
22 trong kỹ thuật. Python có hỗ trợ tích hợp cho các số phức, được viết bằng ký hiệu sau này; . g. ,
callable[argument1, argument2, ...]
24. Để có quyền truy cập vào các phần tương đương phức tạp của mô-đun
callable[argument1, argument2, ...]
25, hãy sử dụng
callable[argument1, argument2, ...]
26. Sử dụng số phức là một tính năng toán học khá tiên tiến. Nếu bạn không biết về nhu cầu đối với chúng, gần như chắc chắn bạn có thể bỏ qua chúng một cách an toàn

trình quản lý ngữ cảnh¶

Một đối tượng kiểm soát môi trường được thấy trong câu lệnh

callable[argument1, argument2, ...]
27 bằng cách xác định các phương thức
callable[argument1, argument2, ...]
28 và
callable[argument1, argument2, ...]
29. Xem PEP 343

biến ngữ cảnh¶

Một biến có thể có các giá trị khác nhau tùy thuộc vào ngữ cảnh của nó. Điều này tương tự với Thread-Local Storage trong đó mỗi luồng thực thi có thể có một giá trị khác nhau cho một biến. Tuy nhiên, với các biến bối cảnh, có thể có một số bối cảnh trong một luồng thực thi và cách sử dụng chính cho các biến bối cảnh là theo dõi các biến trong các tác vụ không đồng bộ đồng thời. Xem

callable[argument1, argument2, ...]
300

tiếp giáp¶

Một bộ đệm được coi là liền kề chính xác nếu nó là tiếp giáp C hoặc tiếp giáp Fortran. Bộ đệm không chiều là C và Fortran liền kề. Trong mảng một chiều, các mục phải được sắp xếp trong bộ nhớ cạnh nhau, theo thứ tự tăng dần chỉ số bắt đầu từ 0. Trong các mảng liền kề C nhiều chiều, chỉ số cuối cùng thay đổi nhanh nhất khi truy cập các mục theo thứ tự địa chỉ bộ nhớ. Tuy nhiên, trong các mảng liền kề của Fortran, chỉ số đầu tiên thay đổi nhanh nhất

quy trình¶

Coroutines là một dạng tổng quát hơn của chương trình con. Chương trình con được nhập vào tại một điểm và thoát ra tại một điểm khác. Các quy trình có thể được nhập, thoát và tiếp tục tại nhiều điểm khác nhau. Chúng có thể được thực hiện với câu lệnh

callable[argument1, argument2, ...]
06. Xem thêm PEP 492

chức năng coroutine¶

Một hàm trả về một đối tượng coroutine . Một hàm coroutine có thể được định nghĩa bằng câu lệnh

callable[argument1, argument2, ...]
06 và có thể chứa các từ khóa
callable[argument1, argument2, ...]
09,
callable[argument1, argument2, ...]
08 và
callable[argument1, argument2, ...]
03. Chúng được giới thiệu bởi PEP 492.

CPython¶

Việc triển khai chuẩn của ngôn ngữ lập trình Python, như được phân phối trên python. tổ chức. Thuật ngữ “CPython” được sử dụng khi cần thiết để phân biệt triển khai này với các triển khai khác như Jython hoặc IronPython

người trang trí¶

Một hàm trả về một hàm khác, thường được áp dụng dưới dạng chuyển đổi hàm bằng cú pháp

callable[argument1, argument2, ...]
306. Các ví dụ phổ biến cho người trang trí là
callable[argument1, argument2, ...]
307 và
callable[argument1, argument2, ...]
308

Cú pháp trang trí chỉ đơn thuần là đường cú pháp, hai định nghĩa chức năng sau đây là tương đương về mặt ngữ nghĩa

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...

Khái niệm tương tự cũng tồn tại đối với các lớp, nhưng ít được sử dụng hơn ở đó. Xem tài liệu về định nghĩa hàmđịnh nghĩa lớp để biết thêm về trình trang trí.

mô tả¶

Bất kỳ đối tượng nào định nghĩa các phương thức

callable[argument1, argument2, ...]
309,
callable[argument1, argument2, ...]
310 hoặc
callable[argument1, argument2, ...]
311. Khi một thuộc tính lớp là một bộ mô tả, hành vi liên kết đặc biệt của nó được kích hoạt khi tra cứu thuộc tính. Thông thường, sử dụng một. b để lấy, đặt hoặc xóa một thuộc tính tra cứu đối tượng có tên b trong từ điển lớp để tìm a, nhưng nếu b là một bộ mô tả, thì phương thức mô tả tương ứng sẽ được gọi. Hiểu các bộ mô tả là chìa khóa để hiểu sâu về Python vì chúng là cơ sở cho nhiều tính năng bao gồm hàm, phương thức, thuộc tính, phương thức lớp, phương thức tĩnh và tham chiếu đến các siêu lớp

Để biết thêm thông tin về phương pháp của bộ mô tả, hãy xem Triển khai bộ mô tả hoặc Hướng dẫn cách thực hiện bộ mô tả< . .

từ điển¶

Một mảng kết hợp, trong đó các khóa tùy ý được ánh xạ tới các giá trị. Các khóa có thể là bất kỳ đối tượng nào với các phương thức

callable[argument1, argument2, ...]
312 và
callable[argument1, argument2, ...]
313. Được gọi là hàm băm trong Perl

hiểu từ điển¶

Một cách nhỏ gọn để xử lý tất cả hoặc một phần của các phần tử trong một lần lặp và trả về một từ điển cùng với kết quả.

callable[argument1, argument2, ...]
314 tạo một từ điển chứa khóa
callable[argument1, argument2, ...]
315 được ánh xạ tới giá trị
callable[argument1, argument2, ...]
316. Xem Hiển thị cho danh sách, bộ và từ điển .

xem từ điển¶

Các đối tượng được trả về từ

callable[argument1, argument2, ...]
317,
callable[argument1, argument2, ...]
318 và
callable[argument1, argument2, ...]
319 được gọi là chế độ xem từ điển. Chúng cung cấp chế độ xem động cho các mục nhập của từ điển, có nghĩa là khi từ điển thay đổi, chế độ xem sẽ phản ánh những thay đổi này. Để buộc chế độ xem từ điển trở thành một danh sách đầy đủ, hãy sử dụng
callable[argument1, argument2, ...]
320. Xem Đối tượng xem từ điển .

chuỗi tài liệu¶

Một chuỗi ký tự xuất hiện dưới dạng biểu thức đầu tiên trong một lớp, hàm hoặc mô-đun. Mặc dù bị bỏ qua khi bộ phần mềm được thực thi, nhưng nó được trình biên dịch nhận ra và đưa vào thuộc tính

callable[argument1, argument2, ...]
321 của lớp, hàm hoặc mô-đun kèm theo. Vì nó có sẵn thông qua nội quan, nên nó là nơi chuẩn mực cho tài liệu về đối tượng

gõ vịt¶

Một phong cách lập trình không nhìn vào loại đối tượng để xác định xem nó có giao diện phù hợp hay không; . ”] Bằng cách nhấn mạnh các giao diện hơn là các loại cụ thể, mã được thiết kế tốt sẽ cải thiện tính linh hoạt của nó bằng cách cho phép thay thế đa hình. Duck-typing tránh các bài kiểm tra sử dụng

callable[argument1, argument2, ...]
322 hoặc
callable[argument1, argument2, ...]
6. [Tuy nhiên, xin lưu ý rằng cách gõ vịt có thể được bổ sung bằng các lớp cơ sở trừu tượng . ] Thay vào đó, nó thường sử dụng các thử nghiệm
callable[argument1, argument2, ...]
5 hoặc lập trình EAFP .

EAFP¶

Xin tha thứ dễ hơn xin phép. Phong cách mã hóa Python phổ biến này giả định sự tồn tại của các khóa hoặc thuộc tính hợp lệ và bắt các ngoại lệ nếu giả định đó sai. Phong cách rõ ràng và nhanh chóng này được đặc trưng bởi sự hiện diện của nhiều câu lệnh

callable[argument1, argument2, ...]
325 và
callable[argument1, argument2, ...]
326. Kỹ thuật này trái ngược với kiểu LBYL phổ biến đối với nhiều ngôn ngữ khác như C.

sự biểu lộ¶

Một đoạn cú pháp có thể được đánh giá cho một số giá trị. Nói cách khác, một biểu thức là sự tích lũy của các phần tử biểu thức như ký tự, tên, truy cập thuộc tính, toán tử hoặc lệnh gọi hàm, tất cả đều trả về một giá trị. Ngược lại với nhiều ngôn ngữ khác, không phải tất cả các cấu trúc ngôn ngữ đều là biểu thức. Cũng có câu lệnh không thể dùng làm biểu thức, chẳng hạn như

callable[argument1, argument2, ...]
327. Bài tập cũng là câu lệnh, không phải biểu thức.

mô-đun mở rộng¶

Một mô-đun được viết bằng C hoặc C++, sử dụng API C của Python để tương tác với lõi và với mã người dùng

chuỗi f¶

Các chuỗi ký tự chuỗi có tiền tố là

callable[argument1, argument2, ...]
328 hoặc
callable[argument1, argument2, ...]
329 thường được gọi là “chuỗi f”, viết tắt của các chuỗi ký tự được định dạng . Xem thêm PEP 498.

đối tượng tập tin¶

Một đối tượng hiển thị API hướng tệp [với các phương thức như

callable[argument1, argument2, ...]
330 hoặc
callable[argument1, argument2, ...]
331] cho tài nguyên cơ bản. Tùy thuộc vào cách nó được tạo, một đối tượng tệp có thể làm trung gian truy cập vào tệp thực trên đĩa hoặc tới một loại thiết bị lưu trữ hoặc liên lạc khác [ví dụ: đầu vào/đầu ra tiêu chuẩn, bộ đệm trong bộ nhớ, ổ cắm, đường ống, v.v. ]. Đối tượng tệp còn được gọi là đối tượng giống như tệp hoặc luồng

Thực tế có ba loại đối tượng tệp. thô tệp nhị phân , đệm tệp nhị phântext files. Their interfaces are defined in the

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
1 module. The canonical way to create a file object is by using the
callable[argument1, argument2, ...]
333 function.

đối tượng giống như tệp¶

Từ đồng nghĩa với đối tượng tệp .

mã hóa hệ thống tập tin và trình xử lý lỗi¶

Mã hóa và trình xử lý lỗi được Python sử dụng để giải mã byte từ hệ điều hành và mã hóa Unicode sang hệ điều hành

Mã hóa hệ thống tệp phải đảm bảo giải mã thành công tất cả các byte dưới 128. Nếu mã hóa hệ thống tệp không cung cấp bảo đảm này, các chức năng API có thể tăng

callable[argument1, argument2, ...]
334

Các hàm

callable[argument1, argument2, ...]
335 và
callable[argument1, argument2, ...]
336 có thể được sử dụng để nhận mã hóa hệ thống tệp và trình xử lý lỗi

Trình xử lý lỗi và mã hóa hệ thống tệp filesystem encoding and error handler được định cấu hình khi khởi động Python bằng hàm

callable[argument1, argument2, ...]
337. xem các thành viên của
callable[argument1, argument2, ...]
338 và
callable[argument1, argument2, ...]
339 của
callable[argument1, argument2, ...]
340.

Xem thêm mã hóa ngôn ngữ .

công cụ tìm¶

Một đối tượng cố gắng tìm trình tải cho mô-đun đang được nhập.

Kể từ Python 3. 3, có hai loại công cụ tìm. công cụ tìm đường dẫn meta để sử dụng với

callable[argument1, argument2, ...]
341 và công cụ tìm mục nhập đường dẫn để sử dụng .

Xem PEP 302, PEP 420 và PEP 451 để biết thêm chi tiết

phân tầng¶

Phép chia toán học làm tròn xuống số nguyên gần nhất. Toán tử chia tầng là

callable[argument1, argument2, ...]
343. Ví dụ: biểu thức
callable[argument1, argument2, ...]
344 ước tính thành
callable[argument1, argument2, ...]
345 trái ngược với
callable[argument1, argument2, ...]
346 được trả về bởi phép chia thực float. Lưu ý rằng
callable[argument1, argument2, ...]
347 là
callable[argument1, argument2, ...]
348 vì đó là
callable[argument1, argument2, ...]
349 được làm tròn xuống. Xem PEP 238

chức năng¶

Một loạt các câu lệnh trả về một số giá trị cho người gọi. Nó cũng có thể được truyền bằng 0 hoặc nhiều đối số có thể được sử dụng trong quá trình thực thi phần thân. Xem thêm tham số , phương phápFunction definitions section.

chú thích chức năng¶

Một chú thích của tham số hàm hoặc giá trị trả về.

Chú thích hàm thường được sử dụng cho gợi ý loại . ví dụ: hàm này được mong đợi nhận hai đối số

callable[argument1, argument2, ...]
350 và cũng được mong đợi có giá trị trả về
callable[argument1, argument2, ...]
350.

callable[argument1, argument2, ...]
0

Cú pháp chú thích hàm được giải thích trong phần Định nghĩa hàm .

Xem chú thích biến và PEP 484, mô tả chức năng này. Ngoài ra, hãy xem Các phương pháp hay nhất về chú thích để biết các phương pháp hay nhất khi làm việc với chú thích.

__Tương lai__¶

A tuyên bố tương lai ,

callable[argument1, argument2, ...]
352, chỉ đạo trình biên dịch biên dịch mô-đun hiện tại bằng cách sử dụng cú pháp hoặc ngữ nghĩa sẽ trở thành tiêu chuẩn trong bản phát hành tương lai của . Mô-đun
callable[argument1, argument2, ...]
353 ghi lại các giá trị có thể có của tính năng. Bằng cách nhập mô-đun này và đánh giá các biến của nó, bạn có thể biết khi nào một tính năng mới được thêm vào ngôn ngữ lần đầu tiên và khi nào nó sẽ [hoặc đã] trở thành mặc định.

callable[argument1, argument2, ...]
3

thu gom rác thải¶

Quá trình giải phóng bộ nhớ khi không sử dụng nữa. Python thực hiện thu gom rác thông qua đếm tham chiếu và bộ thu gom rác theo chu kỳ có khả năng phát hiện và phá vỡ các chu kỳ tham chiếu. Bộ thu gom rác có thể được điều khiển bằng mô-đun

callable[argument1, argument2, ...]
354

máy phát điện¶

Một hàm trả về một trình lặp bộ tạo . Nó trông giống như một hàm bình thường ngoại trừ việc nó chứa các biểu thức

callable[argument1, argument2, ...]
07 để tạo ra một loạt các giá trị có thể sử dụng được trong vòng lặp for hoặc có thể được truy xuất từng giá trị một với hàm
callable[argument1, argument2, ...]
356.

Thường đề cập đến một hàm tạo, nhưng có thể đề cập đến một trình lặp trình tạo trong một số ngữ cảnh. Trong trường hợp ý nghĩa dự định không rõ ràng, hãy sử dụng các thuật ngữ đầy đủ để tránh sự mơ hồ

bộ lặp máy phát điện¶

Một đối tượng được tạo bởi hàm trình tạo .

Mỗi

callable[argument1, argument2, ...]
07 tạm thời ngừng xử lý, ghi nhớ trạng thái thực thi vị trí [bao gồm các biến cục bộ và câu lệnh thử đang chờ xử lý]. Khi trình lặp trình tạo tiếp tục, nó sẽ tiếp tục ở nơi nó đã dừng lại [ngược lại với các hàm bắt đầu mới trên mỗi lệnh gọi]

biểu thức trình tạo¶

Một biểu thức trả về một iterator. Nó trông giống như một biểu thức bình thường, theo sau là mệnh đề

callable[argument1, argument2, ...]
358 xác định biến vòng lặp, phạm vi và mệnh đề
callable[argument1, argument2, ...]
359 tùy chọn. Biểu thức kết hợp tạo ra các giá trị cho một hàm kèm theo

callable[argument1, argument2, ...]
1

chức năng chung¶

Một chức năng bao gồm nhiều chức năng thực hiện cùng một hoạt động cho các loại khác nhau. Việc triển khai nào sẽ được sử dụng trong cuộc gọi được xác định bởi thuật toán điều phối

Xem thêm mục nhập bảng thuật ngữ công văn đơn lẻ , trình trang trí

callable[argument1, argument2, ...]
360 và PEP 443.

loại chung¶

A loại có thể được tham số hóa; . Được sử dụng cho container class such as

callable[argument1, argument2, ...]
361 or
callable[argument1, argument2, ...]
362. Used for gợi ý nhậpchú thích .

Để biết thêm chi tiết, hãy xem các loại bí danh chung , PEP 483, PEP 484, PEP 585 và mô-đun

callable[argument1, argument2, ...]
363.

GIL¶

Xem khóa trình thông dịch chung .

khóa phiên dịch toàn cầu¶

Cơ chế được sử dụng bởi trình thông dịch CPython để đảm bảo rằng chỉ có một luồng thực thi Python mã byte . Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như

callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý. . Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
. Điều này đơn giản hóa việc triển khai CPython bằng cách làm cho mô hình đối tượng [bao gồm các loại tích hợp quan trọng như
callable[argument1, argument2, ...]
362] hoàn toàn an toàn trước truy cập đồng thời. Khóa toàn bộ trình thông dịch giúp trình thông dịch trở thành đa luồng dễ dàng hơn, với chi phí là phần lớn tính song song của các máy đa bộ xử lý.
at a time. This simplifies the CPython implementation by making the object model [including critical built-in types such as
callable[argument1, argument2, ...]
362] implicitly safe against concurrent access. Locking the entire interpreter makes it easier for the interpreter to be multi-threaded, at the expense of much of the parallelism afforded by multi-processor machines.

Tuy nhiên, một số mô-đun mở rộng, tiêu chuẩn hoặc bên thứ ba, được thiết kế để giải phóng GIL khi thực hiện các tác vụ tính toán chuyên sâu như nén hoặc băm. Ngoài ra, GIL luôn được giải phóng khi thực hiện I/O

Những nỗ lực trước đây để tạo ra một trình thông dịch “free-threaded” [một trình thông dịch khóa dữ liệu được chia sẻ ở mức độ chi tiết tốt hơn nhiều] đã không thành công vì hiệu suất bị ảnh hưởng trong trường hợp bộ xử lý đơn thông thường. Người ta tin rằng khắc phục vấn đề hiệu suất này sẽ làm cho việc triển khai phức tạp hơn nhiều và do đó tốn kém hơn để duy trì

pyc¶ dựa trên hàm băm

Tệp bộ đệm mã byte sử dụng hàm băm thay vì thời gian sửa đổi lần cuối của tệp nguồn tương ứng để xác định tính hợp lệ của nó. Xem Hủy hiệu lực mã byte được lưu trong bộ nhớ đệm .

có thể băm¶

Một đối tượng có thể băm nếu nó có giá trị băm không bao giờ thay đổi trong suốt thời gian tồn tại của nó [nó cần một phương thức

callable[argument1, argument2, ...]
312] và có thể được so sánh với các đối tượng khác [nó cần một phương thức
callable[argument1, argument2, ...]
313]. Các đối tượng có thể băm so sánh bằng nhau phải có cùng giá trị băm

Khả năng băm làm cho một đối tượng có thể sử dụng được như một khóa từ điển và một thành viên được thiết lập, bởi vì các cấu trúc dữ liệu này sử dụng giá trị băm bên trong

Hầu hết các đối tượng tích hợp sẵn bất biến của Python đều có thể băm được; . Các đối tượng là thể hiện của các lớp do người dùng định nghĩa có thể băm theo mặc định. Tất cả họ đều so sánh không bằng nhau [ngoại trừ với chính họ] và giá trị băm của họ được lấy từ

callable[argument1, argument2, ...]
367 của họ

nhàn rỗi¶

Môi trường học tập và phát triển tích hợp cho Python. IDLE là môi trường trình biên dịch và trình biên dịch cơ bản đi kèm với bản phân phối tiêu chuẩn của Python.

bất biến¶

Một đối tượng có giá trị cố định. Các đối tượng bất biến bao gồm số, chuỗi và bộ dữ liệu. Một đối tượng như vậy không thể được thay đổi. Một đối tượng mới phải được tạo nếu một giá trị khác phải được lưu trữ. Chúng đóng một vai trò quan trọng ở những nơi cần giá trị băm không đổi, chẳng hạn như một khóa trong từ điển

đường dẫn nhập¶

Danh sách các vị trí [hoặc mục nhập đường dẫn ] được tìm kiếm bởi công cụ tìm dựa trên đường dẫn< . Trong quá trình nhập, danh sách các vị trí này thường đến từ

callable[argument1, argument2, ...]
368, nhưng đối với các gói con, danh sách này cũng có thể đến từ thuộc tính
callable[argument1, argument2, ...]
369 của gói mẹ. for modules to import. During import, this list of locations usually comes from
callable[argument1, argument2, ...]
368, but for subpackages it may also come from the parent package’s
callable[argument1, argument2, ...]
369 attribute.

nhập khẩu¶

Quá trình mà mã Python trong một mô-đun được cung cấp cho mã Python trong một mô-đun khác

nhà nhập khẩu¶

Một đối tượng vừa tìm vừa tải mô-đun; . finder and loader object.

tương tác¶

Python có một trình thông dịch tương tác, nghĩa là bạn có thể nhập các câu lệnh và biểu thức tại dấu nhắc của trình thông dịch, thực thi chúng ngay lập tức và xem kết quả của chúng. Chỉ cần khởi chạy

callable[argument1, argument2, ...]
370 mà không có đối số [có thể bằng cách chọn nó từ menu chính của máy tính]. Đó là một cách rất hiệu quả để thử nghiệm những ý tưởng mới hoặc kiểm tra các mô-đun và gói [hãy nhớ
callable[argument1, argument2, ...]
371]

thông dịch¶

Python là ngôn ngữ được thông dịch, trái ngược với ngôn ngữ được biên dịch, mặc dù sự khác biệt có thể không rõ ràng do sự hiện diện của trình biên dịch mã byte. Điều này có nghĩa là các tệp nguồn có thể được chạy trực tiếp mà không cần tạo một tệp thực thi một cách rõ ràng. Các ngôn ngữ được thông dịch thường có chu kỳ phát triển/gỡ lỗi ngắn hơn so với các ngôn ngữ được biên dịch, mặc dù các chương trình của chúng thường chạy chậm hơn. Xem thêm tương tác .

tắt trình thông dịch¶

Khi được yêu cầu tắt, trình thông dịch Python sẽ chuyển sang một giai đoạn đặc biệt, trong đó trình thông dịch dần dần giải phóng tất cả các tài nguyên được phân bổ, chẳng hạn như các mô-đun và các cấu trúc nội bộ quan trọng khác. Nó cũng thực hiện một số lệnh gọi tới trình thu gom rác . Điều này có thể kích hoạt việc thực thi mã trong hàm hủy do người dùng xác định hoặc hàm gọi lại yếu. Mã được thực thi trong giai đoạn tắt máy có thể gặp phải nhiều ngoại lệ khác nhau vì các tài nguyên mà nó dựa vào có thể không hoạt động nữa [ví dụ phổ biến là mô-đun thư viện hoặc máy cảnh báo].

Lý do chính khiến trình thông dịch bị tắt là do mô-đun

callable[argument1, argument2, ...]
372 hoặc tập lệnh đang chạy đã thực thi xong

có thể lặp lại¶

Một đối tượng có khả năng trả lại từng thành viên của nó. Ví dụ về các lần lặp bao gồm tất cả các loại trình tự [chẳng hạn như

callable[argument1, argument2, ...]
361,
callable[argument1, argument2, ...]
15 và
callable[argument1, argument2, ...]
375] và một số loại không theo trình tự như
callable[argument1, argument2, ...]
362, đối tượng tệp và đối tượng của . sequence semantics.

Iterables có thể được sử dụng trong vòng lặp

callable[argument1, argument2, ...]
358 và ở nhiều nơi khác khi cần có trình tự [
callable[argument1, argument2, ...]
380,
callable[argument1, argument2, ...]
381, …]. Khi một đối tượng có thể lặp lại được truyền dưới dạng đối số cho hàm tích hợp sẵn
callable[argument1, argument2, ...]
382, nó sẽ trả về một trình vòng lặp cho đối tượng. Trình lặp này tốt cho một lần vượt qua tập hợp các giá trị. Khi sử dụng iterables, thường không cần thiết phải gọi
callable[argument1, argument2, ...]
382 hoặc tự xử lý các đối tượng iterable. Câu lệnh
callable[argument1, argument2, ...]
358 tự động thực hiện điều đó cho bạn, tạo một biến tạm thời chưa được đặt tên để giữ trình vòng lặp trong suốt thời gian của vòng lặp. Xem thêm trình lặp , trình tựgenerator.

iterator¶

Một đối tượng đại diện cho một luồng dữ liệu. Các lệnh gọi lặp lại tới phương thức

callable[argument1, argument2, ...]
385 của iterator [hoặc chuyển nó tới hàm tích hợp sẵn
callable[argument1, argument2, ...]
356] trả về các mục liên tiếp trong luồng. Khi không có thêm dữ liệu, thay vào đó, một ngoại lệ
callable[argument1, argument2, ...]
387 sẽ được đưa ra. Tại thời điểm này, đối tượng iterator đã cạn kiệt và bất kỳ lệnh gọi nào khác đến phương thức
callable[argument1, argument2, ...]
385 của nó chỉ cần tăng lại
callable[argument1, argument2, ...]
387. Các trình lặp được yêu cầu phải có phương thức
callable[argument1, argument2, ...]
377 trả về chính đối tượng trình lặp để mọi trình lặp cũng có thể lặp được và có thể được sử dụng ở hầu hết các nơi chấp nhận các trình lặp khác. Một ngoại lệ đáng chú ý là mã thử nhiều lần lặp lại. Một đối tượng vùng chứa [chẳng hạn như
callable[argument1, argument2, ...]
361] tạo ra một trình vòng lặp mới mỗi khi bạn chuyển nó đến hàm
callable[argument1, argument2, ...]
382 hoặc sử dụng nó trong vòng lặp
callable[argument1, argument2, ...]
358. Cố gắng thực hiện điều này với một trình vòng lặp sẽ chỉ trả về cùng một đối tượng trình vòng lặp đã cạn kiệt được sử dụng trong lần lặp trước đó, làm cho nó trông giống như một thùng chứa trống

Bạn có thể tìm thêm thông tin trong Các loại trình lặp .

Chi tiết triển khai CPython. CPython không áp dụng nhất quán yêu cầu mà trình vòng lặp xác định

callable[argument1, argument2, ...]
377

chức năng chính¶

Hàm chính hoặc hàm đối chiếu là một hàm có thể gọi được trả về một giá trị được sử dụng để sắp xếp hoặc sắp xếp. Ví dụ:

callable[argument1, argument2, ...]
395 được sử dụng để tạo khóa sắp xếp nhận biết các quy ước sắp xếp cụ thể của miền địa phương

Một số công cụ trong Python chấp nhận các hàm chính để kiểm soát cách sắp xếp hoặc nhóm các phần tử. Chúng bao gồm

callable[argument1, argument2, ...]
396,
callable[argument1, argument2, ...]
397,
callable[argument1, argument2, ...]
398,
callable[argument1, argument2, ...]
399,
callable[argument1, argument2, ...]
00,
callable[argument1, argument2, ...]
01,
callable[argument1, argument2, ...]
02 và
callable[argument1, argument2, ...]
03

Có một số cách để tạo chức năng chính. Ví dụ. phương thức

callable[argument1, argument2, ...]
04 có thể đóng vai trò là chức năng chính cho các loại phân biệt chữ hoa chữ thường. Ngoài ra, một chức năng quan trọng có thể được xây dựng từ một biểu thức
callable[argument1, argument2, ...]
05 chẳng hạn như
callable[argument1, argument2, ...]
06. Ngoài ra,
callable[argument1, argument2, ...]
07,
callable[argument1, argument2, ...]
08 và
callable[argument1, argument2, ...]
09 là ba hàm tạo chính. Xem phần Sắp xếp CÁCH để biết ví dụ về cách tạo và sử dụng các hàm chính.

đối số từ khóa¶

Xem đối số .

lambda¶

Một hàm nội tuyến ẩn danh bao gồm một biểu thức đơn lẻ được đánh giá khi hàm được gọi. Cú pháp để tạo hàm lambda là

callable[argument1, argument2, ...]
10

LBYL¶

Hãy quan sát trước khi nhảy. Phong cách mã hóa này kiểm tra rõ ràng các điều kiện trước khi thực hiện cuộc gọi hoặc tra cứu. Phong cách này trái ngược với cách tiếp cận EAFP và được đặc trưng bởi sự hiện diện của nhiều câu lệnh

callable[argument1, argument2, ...]
359.

Trong một môi trường đa luồng, cách tiếp cận LBYL có thể có nguy cơ đưa ra một điều kiện chạy đua giữa “đang tìm kiếm” và “đang nhảy vọt”. Ví dụ: mã,

callable[argument1, argument2, ...]
12 có thể không thành công nếu một luồng khác xóa khóa khỏi ánh xạ sau khi kiểm tra, nhưng trước khi tra cứu. Vấn đề này có thể được giải quyết bằng khóa hoặc bằng cách sử dụng phương pháp EAFP

mã hóa ngôn ngữ¶

Trên Unix, nó là mã hóa của ngôn ngữ LC_CTYPE. Nó có thể được thiết lập với

callable[argument1, argument2, ...]
13

Trên Windows, đó là trang mã ANSI [ví dụ:.

callable[argument1, argument2, ...]
14]

Trên Android và VxWorks, Python sử dụng

callable[argument1, argument2, ...]
15 làm mã hóa ngôn ngữ

callable[argument1, argument2, ...]
16 có thể được sử dụng để lấy mã hóa ngôn ngữ

Cũng xem mã hóa hệ thống tệp và trình xử lý lỗi .

danh sách¶

Trình tự Python tích hợp . Mặc dù tên của nó giống với một mảng trong các ngôn ngữ khác hơn là một danh sách được liên kết vì quyền truy cập vào các phần tử là O[1].

hiểu danh sách¶

Một cách nhỏ gọn để xử lý tất cả hoặc một phần của các phần tử trong một chuỗi và trả về một danh sách có kết quả.

callable[argument1, argument2, ...]
17 tạo danh sách các chuỗi chứa các số hex chẵn [0x. ] trong khoảng từ 0 đến 255. Mệnh đề
callable[argument1, argument2, ...]
359 là tùy chọn. Nếu bỏ qua, tất cả các yếu tố trong
callable[argument1, argument2, ...]
19 được xử lý

bộ nạp¶

Một đối tượng tải mô-đun. Nó phải định nghĩa một phương thức có tên là

callable[argument1, argument2, ...]
20. Trình tải thường được trả về bởi công cụ tìm . Xem PEP 302 để biết chi tiết và
callable[argument1, argument2, ...]
21 để biết lớp cơ sở trừu tượng .

phương pháp ma thuật¶

Một từ đồng nghĩa không trang trọng cho phương pháp đặc biệt .

lập bản đồ¶

Một đối tượng vùng chứa hỗ trợ tra cứu khóa tùy ý và triển khai các phương thức được chỉ định trong

callable[argument1, argument2, ...]
22 hoặc
callable[argument1, argument2, ...]
23 các lớp cơ sở trừu tượng . Ví dụ bao gồm
callable[argument1, argument2, ...]
362,
callable[argument1, argument2, ...]
25,
callable[argument1, argument2, ...]
26 và
callable[argument1, argument2, ...]
27.

công cụ tìm đường meta¶

A công cụ tìm được trả về bởi tìm kiếm của

callable[argument1, argument2, ...]
341. Công cụ tìm đường dẫn meta có liên quan đến, nhưng khác với công cụ tìm mục nhập đường dẫn .

Xem

callable[argument1, argument2, ...]
29 để biết các phương pháp mà công cụ tìm đường dẫn meta triển khai

siêu lớp¶

Lớp của một lớp. Định nghĩa lớp tạo tên lớp, từ điển lớp và danh sách các lớp cơ sở. Siêu dữ liệu chịu trách nhiệm lấy ba đối số đó và tạo lớp. Hầu hết các ngôn ngữ lập trình hướng đối tượng đều cung cấp cài đặt mặc định. Điều khiến Python trở nên đặc biệt là có thể tạo các siêu dữ liệu tùy chỉnh. Hầu hết người dùng không bao giờ cần công cụ này, nhưng khi có nhu cầu, siêu dữ liệu có thể cung cấp các giải pháp mạnh mẽ, thanh lịch. Chúng đã được sử dụng để ghi nhật ký truy cập thuộc tính, thêm an toàn luồng, theo dõi việc tạo đối tượng, triển khai các singleton và nhiều tác vụ khác

Bạn có thể tìm thêm thông tin trong Siêu lớp .

phương pháp¶

Một hàm được định nghĩa bên trong thân lớp. Nếu được gọi như một thuộc tính của một thể hiện của lớp đó, thì phương thức sẽ lấy đối tượng thể hiện làm đối số argument đầu tiên của nó [thường được gọi là

callable[argument1, argument2, ...]
30]. Xem hàmphạm vi lồng nhau .

trật tự giải quyết phương pháp¶

Thứ tự giải quyết phương pháp là thứ tự mà các lớp cơ sở được tìm kiếm thành viên trong quá trình tra cứu. Xem Con trăn 2. 3 Thứ tự giải quyết phương pháp để biết chi tiết về thuật toán được trình thông dịch Python sử dụng kể từ phiên bản 2. 3 phát hành

mô-đun¶

Một đối tượng đóng vai trò là đơn vị tổ chức của mã Python. Các mô-đun có một không gian tên chứa các đối tượng Python tùy ý. Các mô-đun được tải vào Python theo quy trình nhập .

Xem thêm gói .

thông số mô-đun¶

Một không gian tên chứa thông tin liên quan đến nhập khẩu được sử dụng để tải mô-đun. Một ví dụ của

callable[argument1, argument2, ...]
31

MRO¶

Xem trình tự giải quyết phương pháp .

có thể thay đổi¶

Các đối tượng có thể thay đổi có thể thay đổi giá trị của chúng nhưng vẫn giữ nguyên

callable[argument1, argument2, ...]
367. Xem thêm không thay đổi .

tuple được đặt tên¶

Thuật ngữ “bộ được đặt tên” áp dụng cho bất kỳ loại hoặc lớp nào kế thừa từ bộ và các phần tử có thể lập chỉ mục của chúng cũng có thể truy cập được bằng cách sử dụng các thuộc tính được đặt tên. Loại hoặc lớp cũng có thể có các tính năng khác

Một số loại dựng sẵn được đặt tên là bộ dữ liệu, bao gồm các giá trị được trả về bởi

callable[argument1, argument2, ...]
33 và
callable[argument1, argument2, ...]
34. Một ví dụ khác là
callable[argument1, argument2, ...]
35

callable[argument1, argument2, ...]
1

Một số bộ dữ liệu được đặt tên là các loại tích hợp sẵn [chẳng hạn như các ví dụ trên]. Ngoài ra, một bộ dữ liệu được đặt tên có thể được tạo từ một định nghĩa lớp thông thường kế thừa từ

callable[argument1, argument2, ...]
375 và định nghĩa các trường được đặt tên. Một lớp như vậy có thể được viết bằng tay hoặc nó có thể được tạo bằng chức năng xuất xưởng
callable[argument1, argument2, ...]
37. Kỹ thuật thứ hai cũng thêm một số phương thức bổ sung có thể không tìm thấy trong các bộ dữ liệu được đặt tên viết tay hoặc tích hợp sẵn

không gian tên¶

Nơi mà một biến được lưu trữ. Không gian tên được triển khai dưới dạng từ điển. Có các không gian tên cục bộ, toàn cầu và tích hợp sẵn cũng như các không gian tên lồng nhau trong các đối tượng [trong các phương thức]. Không gian tên hỗ trợ tính mô đun bằng cách ngăn xung đột đặt tên. Chẳng hạn, các hàm

callable[argument1, argument2, ...]
38 và
callable[argument1, argument2, ...]
39 được phân biệt bởi không gian tên của chúng. Không gian tên cũng hỗ trợ khả năng đọc và khả năng bảo trì bằng cách làm rõ mô-đun nào thực hiện chức năng nào. Chẳng hạn, viết
callable[argument1, argument2, ...]
40 hoặc
callable[argument1, argument2, ...]
41 làm rõ rằng các chức năng đó được thực hiện bởi các mô-đun
callable[argument1, argument2, ...]
42 và
callable[argument1, argument2, ...]
43 tương ứng

gói không gian tên¶

Gói PEP 420 package chỉ đóng vai trò là vùng chứa cho các gói phụ. Các gói không gian tên có thể không có biểu diễn vật lý và cụ thể là không giống như gói thông thường vì chúng không có tệp

callable[argument1, argument2, ...]
44.

Xem thêm mô-đun .

phạm vi lồng nhau¶

Khả năng tham chiếu đến một biến trong một định nghĩa kèm theo. Chẳng hạn, một hàm được xác định bên trong một hàm khác có thể tham chiếu đến các biến trong hàm bên ngoài. Lưu ý rằng các phạm vi lồng nhau theo mặc định chỉ hoạt động để tham khảo chứ không phải để gán. Các biến cục bộ đều đọc và ghi trong phạm vi trong cùng. Tương tự, các biến toàn cục đọc và ghi vào không gian tên toàn cầu.

callable[argument1, argument2, ...]
45 cho phép ghi vào phạm vi bên ngoài

lớp học kiểu mới¶

Tên cũ cho hương vị của các lớp hiện được sử dụng cho tất cả các đối tượng lớp. Trong các phiên bản Python trước đó, chỉ các lớp kiểu mới mới có thể sử dụng các tính năng linh hoạt, mới hơn của Python như

callable[argument1, argument2, ...]
46, bộ mô tả, thuộc tính,
callable[argument1, argument2, ...]
47, phương thức lớp và phương thức tĩnh

vật¶

Mọi dữ liệu có trạng thái [thuộc tính hoặc giá trị] và hành vi đã xác định [phương thức]. Cũng là lớp cơ sở cuối cùng của bất kỳ lớp kiểu mới nào.

bưu kiện¶

Một mô-đun Python module có thể chứa các mô-đun con hoặc đệ quy, các gói con. Về mặt kỹ thuật, một gói là một mô-đun Python có thuộc tính

callable[argument1, argument2, ...]
369.

Xem thêm gói thông thườnggói không gian tên .

tham số¶

Một thực thể được đặt tên trong định nghĩa hàm [hoặc phương thức] chỉ định một đối số argument [or in some cases, arguments] that the function can accept. There are five kinds of parameter:

  • vị trí hoặc từ khóa. chỉ định một đối số có thể được truyền theo vị trí hoặc dưới dạng đối số từ khóa . Đây là loại tham số mặc định, ví dụ foo và bar trong phần sau.

    callable[argument1, argument2, ...]
    
    1

  • chỉ vị trí. chỉ định một đối số chỉ có thể được cung cấp theo vị trí. Các tham số chỉ vị trí có thể được xác định bằng cách bao gồm một ký tự

    callable[argument1, argument2, ...]
    
    49 trong danh sách tham số của định nghĩa hàm sau chúng, ví dụ: posonly1 và posonly2 trong phần sau

    callable[argument1, argument2, ...]
    
    2

  • chỉ từ khóa. chỉ định một đối số chỉ có thể được cung cấp bởi từ khóa. Các tham số chỉ có từ khóa có thể được xác định bằng cách bao gồm một tham số var-vị trí duy nhất hoặc

    callable[argument1, argument2, ...]
    
    00 trống trong danh sách tham số của định nghĩa hàm trước chúng, ví dụ: kw_only1 và kw_only2 trong phần sau

    callable[argument1, argument2, ...]
    
    30

  • var-vị trí. chỉ định rằng có thể cung cấp một chuỗi đối số vị trí tùy ý [ngoài bất kỳ đối số vị trí nào đã được các tham số khác chấp nhận]. Một tham số như vậy có thể được xác định bằng cách đặt trước tên tham số bằng

    callable[argument1, argument2, ...]
    
    00, ví dụ: args trong phần sau

    callable[argument1, argument2, ...]
    
    31

  • từ khóa var. chỉ định rằng có thể cung cấp nhiều đối số từ khóa tùy ý [ngoài bất kỳ đối số từ khóa nào đã được các tham số khác chấp nhận]. Một tham số như vậy có thể được xác định bằng cách đặt trước tên tham số với ____ _ ____, ví dụ như kwargs trong ví dụ trên

Các tham số có thể chỉ định cả đối số tùy chọn và bắt buộc, cũng như giá trị mặc định cho một số đối số tùy chọn

Xem thêm mục nhập bảng thuật ngữ đối số , câu hỏi thường gặp về sự khác biệt giữa đối số và tham số< . , the

callable[argument1, argument2, ...]
53 class, the Function definitions section, and PEP 362.

mục nhập đường dẫn¶

Một vị trí duy nhất trên đường dẫn nhậpcông cụ tìm dựa trên đường dẫn consults to find modules for importing.

công cụ tìm mục nhập đường dẫn¶

A finder được trả về bởi một callable trên

callable[argument1, argument2, ...]
342 [i. e. a móc nhập đường dẫn ] biết cách xác định vị trí các mô-đun được cung cấp mục nhập đường dẫn.

Xem

callable[argument1, argument2, ...]
55 để biết các phương pháp mà công cụ tìm mục nhập đường dẫn triển khai

móc nhập đường dẫn¶

Một lệnh gọi được trong danh sách

callable[argument1, argument2, ...]
56 trả về một công cụ tìm mục nhập đường dẫn nếu nó biết cách tìm các mô-đun trên một path entry.

công cụ tìm đường dẫn¶

Một trong những công cụ tìm đường dẫn meta mặc định tìm kiếm đường dẫn nhập for modules.

đối tượng giống đường dẫn¶

Một đối tượng đại diện cho đường dẫn hệ thống tệp. Đối tượng giống đường dẫn là đối tượng

callable[argument1, argument2, ...]
15 hoặc
callable[argument1, argument2, ...]
18 đại diện cho đường dẫn hoặc đối tượng triển khai giao thức
callable[argument1, argument2, ...]
59. Một đối tượng hỗ trợ giao thức
callable[argument1, argument2, ...]
59 có thể được chuyển đổi thành đường dẫn hệ thống tệp
callable[argument1, argument2, ...]
15 hoặc
callable[argument1, argument2, ...]
18 bằng cách gọi hàm
callable[argument1, argument2, ...]
63; . Được giới thiệu bởi PEP 519

PEP¶

Đề xuất cải tiến Python. PEP là một tài liệu thiết kế cung cấp thông tin cho cộng đồng Python hoặc mô tả một tính năng mới cho Python hoặc các quy trình hoặc môi trường của nó. PEP nên cung cấp thông số kỹ thuật ngắn gọn và cơ sở lý luận cho các tính năng được đề xuất

PEP được dự định là cơ chế chính để đề xuất các tính năng mới quan trọng, để thu thập ý kiến ​​đóng góp của cộng đồng về một vấn đề và để ghi lại các quyết định thiết kế đã được đưa vào Python. Tác giả PEP chịu trách nhiệm xây dựng sự đồng thuận trong cộng đồng và ghi lại các ý kiến ​​bất đồng

Xem PEP 1

khẩu phần¶

Một tập hợp các tệp trong một thư mục [có thể được lưu trữ trong tệp zip] đóng góp vào gói không gian tên, như được định nghĩa trong PEP 420

đối số vị trí¶

Xem đối số .

API tạm thời¶

API tạm thời là API đã bị loại trừ một cách có chủ ý khỏi các đảm bảo về khả năng tương thích ngược của thư viện tiêu chuẩn. Mặc dù những thay đổi lớn đối với các giao diện như vậy không được mong đợi, miễn là chúng được đánh dấu tạm thời, những thay đổi không tương thích ngược [lên đến và bao gồm cả việc loại bỏ giao diện] có thể xảy ra nếu các nhà phát triển cốt lõi cho là cần thiết. Những thay đổi như vậy sẽ không được thực hiện một cách vô cớ – chúng sẽ chỉ xảy ra nếu các lỗi cơ bản nghiêm trọng được phát hiện đã bị bỏ sót trước khi đưa vào API

Ngay cả đối với các API tạm thời, các thay đổi không tương thích ngược được coi là “giải pháp cuối cùng” - mọi nỗ lực sẽ vẫn được thực hiện để tìm giải pháp tương thích ngược cho bất kỳ vấn đề nào đã xác định

Quá trình này cho phép thư viện tiêu chuẩn tiếp tục phát triển theo thời gian mà không bị khóa các lỗi thiết kế có vấn đề trong thời gian dài. Xem PEP 411 để biết thêm chi tiết

gói tạm thời¶

Xem API tạm thời .

Trăn 3000¶

Biệt hiệu cho Python 3. x [được đặt ra từ lâu khi việc phát hành phiên bản 3 là điều gì đó trong tương lai xa. ] Điều này cũng được viết tắt là "Py3k"

Pythonic¶

Một ý tưởng hoặc đoạn mã theo sát các thành ngữ phổ biến nhất của ngôn ngữ Python, thay vì triển khai mã bằng các khái niệm phổ biến cho các ngôn ngữ khác. Ví dụ, một thành ngữ phổ biến trong Python là lặp qua tất cả các phần tử của một iterable bằng cách sử dụng câu lệnh

callable[argument1, argument2, ...]
358. Nhiều ngôn ngữ khác không có kiểu cấu trúc này, vì vậy những người không quen thuộc với Python đôi khi sử dụng bộ đếm số để thay thế

callable[argument1, argument2, ...]
32

Trái ngược với phương pháp Pythonic sạch hơn

callable[argument1, argument2, ...]
33

tên đủ điều kiện¶

Tên có dấu chấm hiển thị "đường dẫn" từ phạm vi chung của mô-đun đến một lớp, hàm hoặc phương thức được xác định trong mô-đun đó, như được định nghĩa trong PEP 3155. Đối với các hàm và lớp cấp cao nhất, tên đủ điều kiện giống với tên của đối tượng

callable[argument1, argument2, ...]
34

Khi được sử dụng để chỉ các mô-đun, tên đầy đủ có nghĩa là toàn bộ đường dẫn chấm đến mô-đun, bao gồm bất kỳ gói cha nào, e. g.

callable[argument1, argument2, ...]
69

callable[argument1, argument2, ...]
35

số tham chiếu¶

Số lượng tham chiếu đến một đối tượng. Khi số lượng tham chiếu của một đối tượng giảm xuống 0, nó sẽ bị hủy bỏ. Việc đếm tham chiếu thường không hiển thị đối với mã Python, nhưng nó là thành phần chính của quá trình triển khai CPython . Các lập trình viên có thể gọi hàm

callable[argument1, argument2, ...]
70 để trả về số tham chiếu cho một đối tượng cụ thể.

gói thường xuyên¶

Một gói truyền thống, chẳng hạn như thư mục chứa tệp

callable[argument1, argument2, ...]
44.

Xem thêm gói không gian tên .

__slots__¶

Một khai báo bên trong một lớp tiết kiệm bộ nhớ bằng cách khai báo trước không gian cho các thuộc tính cá thể và loại bỏ từ điển cá thể. Mặc dù phổ biến, nhưng kỹ thuật này hơi khó để thực hiện đúng và tốt nhất là dành riêng cho các trường hợp hiếm hoi khi có số lượng lớn phiên bản trong một ứng dụng quan trọng về bộ nhớ

sự nối tiếp¶

Một có thể lặp lại hỗ trợ truy cập phần tử hiệu quả bằng cách sử dụng chỉ mục số nguyên thông qua phương thức đặc biệt

callable[argument1, argument2, ...]
378 và xác định phương thức
callable[argument1, argument2, ...]
73 trả về độ dài của chuỗi. Một số loại trình tự dựng sẵn là
callable[argument1, argument2, ...]
361,
callable[argument1, argument2, ...]
15,
callable[argument1, argument2, ...]
375 và
callable[argument1, argument2, ...]
18. Lưu ý rằng
callable[argument1, argument2, ...]
362 cũng hỗ trợ
callable[argument1, argument2, ...]
378 và
callable[argument1, argument2, ...]
73, nhưng được coi là một ánh xạ hơn là một chuỗi vì tra cứu sử dụng các khóa bất biến tùy ý thay vì các số nguyên.

Lớp cơ sở trừu tượng

callable[argument1, argument2, ...]
81 định nghĩa một giao diện phong phú hơn nhiều, vượt xa chỉ
callable[argument1, argument2, ...]
378 và
callable[argument1, argument2, ...]
73, bổ sung thêm
callable[argument1, argument2, ...]
84,
callable[argument1, argument2, ...]
85,
callable[argument1, argument2, ...]
86 và
callable[argument1, argument2, ...]
87. Các loại triển khai giao diện mở rộng này có thể được đăng ký rõ ràng bằng cách sử dụng
callable[argument1, argument2, ...]
88

thiết lập hiểu¶

Một cách nhỏ gọn để xử lý tất cả hoặc một phần phần tử trong một lần lặp và trả về một tập hợp có kết quả.

callable[argument1, argument2, ...]
89 tạo tập hợp các chuỗi
callable[argument1, argument2, ...]
90. Xem Hiển thị cho danh sách, bộ và từ điển .

công văn đơn lẻ¶

Một dạng hàm chung gửi đi trong đó việc triển khai được chọn dựa trên loại của một đối số.

lát cắt¶

Một đối tượng thường chứa một phần của trình tự . Một lát cắt được tạo bằng cách sử dụng ký hiệu chỉ số dưới,

callable[argument1, argument2, ...]
91 với dấu hai chấm giữa các số khi một số được đưa ra, chẳng hạn như trong
callable[argument1, argument2, ...]
92. Ký hiệu dấu ngoặc [chỉ số dưới] sử dụng các đối tượng
callable[argument1, argument2, ...]
93 bên trong.

phương pháp đặc biệt¶

Một phương thức được Python gọi ngầm để thực thi một thao tác nhất định trên một loại, chẳng hạn như phép cộng. Các phương thức như vậy có tên bắt đầu và kết thúc bằng dấu gạch dưới kép. Các phương thức đặc biệt được ghi lại trong Tên phương thức đặc biệt .

bản tường trình¶

Một câu lệnh là một phần của bộ [một “khối” mã]. Một câu lệnh là một biểu thức hoặc một trong nhiều cấu trúc có từ khóa, chẳng hạn như

callable[argument1, argument2, ...]
359,
callable[argument1, argument2, ...]
327 hoặc
callable[argument1, argument2, ...]
358.

tài liệu tham khảo mạnh mẽ¶

Trong API C của Python, một tham chiếu mạnh là một tham chiếu đến một đối tượng làm tăng số lượng tham chiếu của đối tượng khi nó được tạo và giảm số lượng tham chiếu của đối tượng khi nó bị xóa

Hàm

callable[argument1, argument2, ...]
17 có thể được sử dụng để tạo một tham chiếu mạnh đến một đối tượng. Thông thường, hàm
callable[argument1, argument2, ...]
98 phải được gọi trên tham chiếu mạnh trước khi thoát khỏi phạm vi của tham chiếu mạnh, để tránh rò rỉ một tham chiếu

Xem thêm tài liệu tham khảo mượn .

mã hóa văn bản¶

Một chuỗi trong Python là một chuỗi các điểm mã Unicode [trong phạm vi

callable[argument1, argument2, ...]
99–
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
00]. Để lưu trữ hoặc truyền một chuỗi, nó cần được đánh số thứ tự thành một chuỗi byte

Nối tiếp một chuỗi thành một chuỗi byte được gọi là "mã hóa" và tạo lại chuỗi từ chuỗi byte được gọi là "giải mã"

Có nhiều loại mã hóa văn bản codec khác nhau, được gọi chung là “mã hóa văn bản”.

tệp văn bản¶

A đối tượng tệp có thể đọc và ghi đối tượng

callable[argument1, argument2, ...]
15. Thông thường, một tệp văn bản thực sự truy cập luồng dữ liệu hướng byte và tự động xử lý mã hóa văn bản . Ví dụ về tệp văn bản là các tệp được mở ở chế độ văn bản [
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
02 hoặc
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
03],
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
04,
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
05 và các phiên bản của
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
06.

Xem thêm tệp nhị phân để biết đối tượng tệp có thể đọc và ghi đối tượng giống như byte< . .

chuỗi trích dẫn ba¶

Một chuỗi bị ràng buộc bởi ba trường hợp của dấu ngoặc kép [”] hoặc dấu nháy đơn [‘]. Mặc dù chúng không cung cấp bất kỳ chức năng nào không có sẵn với chuỗi trích dẫn đơn, nhưng chúng rất hữu ích vì một số lý do. Chúng cho phép bạn bao gồm các dấu ngoặc đơn và dấu ngoặc kép không thoát trong một chuỗi và chúng có thể trải rộng trên nhiều dòng mà không cần sử dụng ký tự tiếp tục, làm cho chúng đặc biệt hữu ích khi viết các chuỗi tài liệu

loại¶

Loại đối tượng Python xác định loại đối tượng đó là gì; . Có thể truy cập loại đối tượng dưới dạng thuộc tính

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
07 của nó hoặc có thể được truy xuất bằng
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
08

nhập bí danh¶

Một từ đồng nghĩa cho một loại, được tạo bằng cách gán loại cho một mã định danh

Bí danh loại rất hữu ích để đơn giản hóa gợi ý loại . Ví dụ.

callable[argument1, argument2, ...]
36

có thể được làm cho dễ đọc hơn như thế này

callable[argument1, argument2, ...]
37

Xem

callable[argument1, argument2, ...]
363 và PEP 484, mô tả chức năng này

gõ gợi ý¶

Một chú thích chỉ định loại dự kiến ​​cho một biến, thuộc tính lớp hoặc tham số hàm hoặc giá trị trả về.

Gợi ý loại là tùy chọn và không được Python thực thi nhưng chúng rất hữu ích cho các công cụ phân tích loại tĩnh và hỗ trợ các IDE hoàn thành và tái cấu trúc mã

Nhập các gợi ý về biến toàn cục, thuộc tính lớp và hàm, nhưng không phải biến cục bộ, có thể được truy cập bằng cách sử dụng

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
10

Xem

callable[argument1, argument2, ...]
363 và PEP 484, mô tả chức năng này

dòng mới phổ quát¶

Một cách diễn giải các luồng văn bản trong đó tất cả những điều sau đây được công nhận là kết thúc một dòng. quy ước cuối dòng Unix

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
12, quy ước Windows
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
13 và quy ước Macintosh cũ
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
14. Xem PEP 278 và PEP 3116, cũng như
def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
15 để biết cách sử dụng bổ sung

chú thích biến¶

Một chú thích của một biến hoặc một thuộc tính lớp.

Khi chú thích một biến hoặc thuộc tính lớp, phép gán là tùy chọn

callable[argument1, argument2, ...]
38

Chú thích biến thường được sử dụng cho gợi ý loại . ví dụ: biến này dự kiến ​​sẽ lấy giá trị

callable[argument1, argument2, ...]
350.

callable[argument1, argument2, ...]
39

Cú pháp chú thích biến được giải thích trong phần Các câu lệnh gán được chú thích .

Xem chú thích chức năng , PEP 484 và PEP 526, mô tả chức năng này. Ngoài ra, hãy xem Các phương pháp hay nhất về chú thích để biết các phương pháp hay nhất khi làm việc với chú thích.

Môi trường ảo¶

Môi trường thời gian chạy được cô lập hợp tác cho phép người dùng và ứng dụng Python cài đặt và nâng cấp các gói phân phối Python mà không can thiệp vào hành vi của các ứng dụng Python khác đang chạy trên cùng một hệ thống

Xem thêm

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
17

máy ảo¶

Một máy tính được xác định hoàn toàn bằng phần mềm. Máy ảo của Python thực thi mã byte do trình biên dịch mã byte phát ra.

Thiền của Python¶

Liệt kê các nguyên tắc và triết lý thiết kế Python hữu ích trong việc hiểu và sử dụng ngôn ngữ này. Có thể tìm thấy danh sách này bằng cách gõ “

def f[arg]:
    ...
f = staticmethod[f]

@staticmethod
def f[arg]:
    ...
18” tại dấu nhắc tương tác

Các từ điển Python có được chuyển qua tham chiếu không?

Về bản chất, có thể nói rằng các đối tượng có thể thay đổi như từ điển, bộ và danh sách được truyền theo tham chiếu . Các đối tượng bất biến như int , str , tuple được truyền theo giá trị.

Làm cách nào để chuyển giá trị từ điển làm tham số trong Python?

“ kwargs ” là viết tắt của đối số từ khóa. Nó được sử dụng để truyền các đối tượng dữ liệu nâng cao như từ điển đến một hàm bởi vì trong các hàm như vậy, người ta không biết về số lượng đối số, do đó dữ liệu được truyền sẽ được xử lý đúng cách bằng cách thêm “* . .

Các danh sách trong Python có được chuyển qua tham chiếu không?

Các danh sách đã được truyền theo tham chiếu , trong đó tất cả các tên Python đều là tham chiếu và các đối tượng danh sách có thể thay đổi.

Bạn có thể truy cập từ điển theo giá trị trong Python không?

Truy cập và ghi dữ liệu trong từ điển Python . Các giá trị có thể được viết bằng cách đặt khóa trong dấu ngoặc vuông bên cạnh từ điển và sử dụng toán tử gán [ = ]. Values in a Python dictionary can be accessed by placing the key within square brackets next to the dictionary. Values can be written by placing key within square brackets next to the dictionary and using the assignment operator [ = ].

Chủ Đề