Đối số tùy chọn chức năng python

Ban đầu, Sphinx được hình thành cho một dự án duy nhất, tài liệu về ngôn ngữ Python. Ngay sau đó, nó được cung cấp cho mọi người dưới dạng công cụ tài liệu, nhưng tài liệu về các mô-đun Python vẫn được tích hợp sẵn – các chỉ thị cơ bản nhất, như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
1, được thiết kế cho các đối tượng Python. Vì Sphinx đã trở nên khá phổ biến, nên người ta quan tâm đến việc sử dụng nó cho nhiều mục đích khác nhau. Các dự án C/C++, JavaScript hoặc thậm chí là đánh dấu reStructuredText (như trong tài liệu này)

Mặc dù điều này luôn có thể thực hiện được, nhưng giờ đây việc hỗ trợ tài liệu của các dự án sử dụng các ngôn ngữ lập trình khác nhau hoặc thậm chí cả những ngôn ngữ không được phân phối Sphinx chính hỗ trợ dễ dàng hơn nhiều, bằng cách cung cấp một miền cho mọi mục đích như vậy

Miền là tập hợp các đánh dấu (reStructuredText chỉ thị s và vai tròs) to describe and link to objects belonging together, e.g. elements of a programming language. Directive and role names in a domain have names like

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
2, e.g.
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
3. Domains can also provide custom indices (like the Python Module Index).

Có tên miền nghĩa là không có vấn đề về đặt tên khi một bộ tài liệu muốn tham chiếu đến e. g. Các lớp C++ và Python. Điều đó cũng có nghĩa là các tiện ích mở rộng hỗ trợ tài liệu của các ngôn ngữ hoàn toàn mới sẽ dễ viết hơn nhiều

Phần này mô tả những gì các miền đi kèm với Sphinx cung cấp. API miền cũng được ghi lại trong phần API miền .

Đánh dấu cơ bản¶

Hầu hết các miền cung cấp một số chỉ thị mô tả đối tượng, được sử dụng để mô tả các đối tượng cụ thể được cung cấp bởi các mô-đun. Mỗi chỉ thị yêu cầu một hoặc nhiều chữ ký để cung cấp thông tin cơ bản về những gì đang được mô tả và nội dung phải là mô tả

Một miền thường sẽ giữ một chỉ mục nội bộ của tất cả các thực thể để hỗ trợ tham chiếu chéo. Thông thường, nó cũng sẽ thêm các mục trong chỉ mục chung được hiển thị. Nếu bạn muốn chặn việc thêm một mục vào chỉ mục được hiển thị, bạn có thể đặt cờ tùy chọn chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
4. Nếu bạn muốn loại trừ phần mô tả đối tượng khỏi mục lục, bạn có thể đặt cờ tùy chọn chỉ thị
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
5. Nếu bạn muốn sắp chữ một mô tả đối tượng, thậm chí không làm cho nó có sẵn để tham chiếu chéo, bạn có thể đặt cờ tùy chọn chỉ thị
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
6 (có nghĩa là
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
4). Mặc dù vậy, hãy lưu ý rằng không phải mọi lệnh trong mọi miền đều có thể hỗ trợ các tùy chọn này

Mới trong phiên bản 3. 2. Tùy chọn chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
8 trong miền Python, C, C++ và Javascript.

Mới trong phiên bản 5. 2. 3. Tùy chọn chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
5 trong các miền Python, C, C++, Javascript và reStructuredText.

Một ví dụ sử dụng chỉ thị tên miền Python

.. py:function:: spam(eggs)
                 ham(eggs)

   Spam or ham the foo.

Điều này mô tả hai hàm Python

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
00 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
01. (Lưu ý rằng khi chữ ký trở nên quá dài, bạn có thể ngắt chúng nếu bạn thêm dấu gạch chéo ngược vào các dòng được tiếp tục ở dòng tiếp theo. Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
2

(Ví dụ này cũng chỉ ra cách sử dụng cờ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
6. )

Các miền cũng cung cấp các vai trò liên kết lại với các mô tả đối tượng này. Ví dụ: để liên kết với một trong các chức năng được mô tả trong ví dụ trên, bạn có thể nói

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
4

Như bạn có thể thấy, cả tên chỉ thị và vai trò đều chứa tên miền và tên chỉ thị

Tên miền mặc định

Đối với tài liệu mô tả các đối tượng chỉ từ một miền, tác giả sẽ không phải nêu lại tên của nó ở mỗi chỉ thị, vai trò, v.v… sau khi đã chỉ định mặc định. Điều này có thể được thực hiện thông qua giá trị cấu hình

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
03 hoặc thông qua chỉ thị này

.. miền mặc định. tên

Chọn miền mặc định mới. Mặc dù

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
03 chọn mặc định chung, nhưng điều này chỉ có tác dụng trong cùng một tệp

Nếu không có giá trị mặc định nào khác được chọn, miền Python (có tên là

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
05) là giá trị mặc định, chủ yếu để tương thích với tài liệu được viết cho các phiên bản Sphinx cũ hơn

Chỉ thị và vai trò thuộc về miền mặc định có thể được đề cập mà không cần cung cấp tên miền, i. e

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
8

Cú pháp tham chiếu chéo¶

Đối với các vai trò tham chiếu chéo do miền cung cấp, cơ sở vật chất giống như đối với tham chiếu chéo chung. Xem Cú pháp tham chiếu chéo .

Nói ngắn gọn

  • Bạn có thể cung cấp một tiêu đề rõ ràng và mục tiêu tham chiếu.

    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    06 sẽ đề cập đến mục tiêu, nhưng văn bản liên kết sẽ là tiêu đề

  • Nếu bạn đặt trước nội dung bằng

    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    07, sẽ không có tham chiếu/siêu liên kết nào được tạo

  • Nếu bạn đặt trước nội dung bằng

    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    08, văn bản liên kết sẽ chỉ là thành phần cuối cùng của mục tiêu. Ví dụ:
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    09 sẽ đề cập đến
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    30 nhưng chỉ hiển thị
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    31 dưới dạng văn bản liên kết

Miền Python¶

Miền Python (tên py) cung cấp các lệnh sau để khai báo mô-đun

.. py. mô-đun. tên

Lệnh này đánh dấu phần đầu của mô tả mô-đun (hoặc mô-đun con của gói, trong trường hợp đó, tên phải đủ điều kiện, bao gồm cả tên gói). Một mô tả của mô-đun chẳng hạn như chuỗi tài liệu có thể được đặt trong phần thân của chỉ thị

Chỉ thị này cũng sẽ gây ra một mục trong chỉ mục mô-đun toàn cầu

Đã thay đổi trong phiên bản 5. 2. Chỉ thị mô-đun hỗ trợ nội dung cơ thể.

tùy chọn

:platform: nền tảng (dấu phẩy được phân tách danh sách)

Cho biết các nền tảng có sẵn mô-đun (nếu nó có sẵn trên tất cả các nền tảng, tùy chọn này sẽ được bỏ qua). Các khóa là số nhận dạng ngắn; . Điều quan trọng là sử dụng khóa đã được sử dụng khi áp dụng

:synopsis: mục đích (văn bản)

Bao gồm một câu mô tả mục đích của mô-đun – nó hiện chỉ được sử dụng trong Chỉ mục mô-đun toàn cầu

:deprecated: (không đối số)

Đánh dấu một mô-đun là không dùng nữa;

.. py. mô-đun hiện tại. tên

Chỉ thị này nói với Sphinx rằng các lớp, chức năng, v.v. tài liệu từ đây nằm trong mô-đun nhất định (như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
32), nhưng nó sẽ không tạo mục nhập chỉ mục, mục nhập trong Chỉ mục mô-đun toàn cầu hoặc mục tiêu liên kết cho
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
33. Điều này hữu ích trong các tình huống khi tài liệu về mọi thứ trong một mô-đun trải rộng trên nhiều tệp hoặc phần – một vị trí có chỉ thị
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
32, những vị trí khác chỉ có
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
35

Các lệnh sau được cung cấp cho nội dung mô-đun và lớp

.. py. hàm số. tên(tham số)

Mô tả chức năng cấp mô-đun. Chữ ký phải bao gồm các tham số như đã cho trong định nghĩa hàm Python, xem Chữ ký Python . Ví dụ.

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
9

Đối với các phương pháp bạn nên sử dụng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
36

Mô tả thường bao gồm thông tin về các tham số cần thiết và cách chúng được sử dụng (đặc biệt là liệu các đối tượng có thể thay đổi được truyền dưới dạng tham số có được sửa đổi hay không), tác dụng phụ và các ngoại lệ có thể xảy ra

Thông tin này có thể (trong bất kỳ chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
05 nào) tùy chọn được cung cấp ở dạng có cấu trúc, xem Danh sách trường thông tin .

tùy chọn

:async: (không giá trị)

Cho biết chức năng này là một chức năng không đồng bộ

Mới trong phiên bản 2. 1

:canonical: (tên đủ tiêu chuẩn đầy đủ bao gồm module name)

Mô tả vị trí nơi đối tượng được xác định nếu đối tượng được nhập từ các mô-đun khác

Mới trong phiên bản 4. 0

.. py. dữ liệu. tên

Mô tả dữ liệu toàn cầu trong một mô-đun, bao gồm cả biến và giá trị được sử dụng làm “hằng số được xác định. ” Thuộc tính lớp và đối tượng không được ghi lại khi sử dụng môi trường này

tùy chọn

:type: loại của biến variable (

Mới trong phiên bản 2. 4

:value: giá trị ban đầu của biến variable (text)

Mới trong phiên bản 2. 4

:canonical: (tên đủ tiêu chuẩn đầy đủ bao gồm module name)

Mô tả vị trí nơi đối tượng được xác định nếu đối tượng được nhập từ các mô-đun khác

Mới trong phiên bản 4. 0

.. py. ngoại lệ. tên

Mô tả một lớp ngoại lệ. Chữ ký có thể, nhưng không cần bao gồm dấu ngoặc đơn với các đối số hàm tạo

tùy chọn

:final: (không giá trị)

Cho biết lớp là lớp cuối cùng

Mới trong phiên bản 3. 1

.. py. lớp. tên. py. lớp. tên(tham số)

Mô tả một lớp học. Chữ ký có thể tùy chọn bao gồm dấu ngoặc đơn với các tham số sẽ được hiển thị dưới dạng đối số hàm tạo. Xem thêm Chữ ký Python .

Các phương thức và thuộc tính thuộc về lớp nên được đặt trong phần thân của chỉ thị này. Nếu chúng được đặt bên ngoài, tên được cung cấp phải chứa tên lớp để các tham chiếu chéo vẫn hoạt động. Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
2

Cách đầu tiên là cách ưa thích

tùy chọn

:canonical: (tên đủ tiêu chuẩn đầy đủ bao gồm module name)

Mô tả vị trí nơi đối tượng được xác định nếu đối tượng được nhập từ các mô-đun khác

Mới trong phiên bản 4. 0

:final: (không giá trị)

Cho biết lớp là lớp cuối cùng

Mới trong phiên bản 3. 1

.. py. thuộc tính. tên

Mô tả một thuộc tính dữ liệu đối tượng. Mô tả phải bao gồm thông tin về loại dữ liệu dự kiến ​​và liệu nó có thể được thay đổi trực tiếp hay không

tùy chọn

:type: loại của thuộc tính attribute (

Mới trong phiên bản 2. 4

:value: giá trị ban đầu của thuộc tính attribute (text)

Mới trong phiên bản 2. 4

:canonical: (tên đủ tiêu chuẩn đầy đủ bao gồm module name)

Mô tả vị trí nơi đối tượng được xác định nếu đối tượng được nhập từ các mô-đun khác

Mới trong phiên bản 4. 0

.. py. tài sản. tên

Mô tả thuộc tính đối tượng

Mới trong phiên bản 4. 0

tùy chọn

:abstractmethod: (không giá trị)

Chỉ ra tài sản là trừu tượng

:classmethod: (không giá trị)

Chỉ ra thuộc tính là một classmethod

:type: loại của the thuộc tính ( . .. py. phương pháp. tên(tham số)

Mô tả một phương thức đối tượng. Các tham số không được bao gồm tham số

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
38. Mô tả phải bao gồm thông tin tương tự như mô tả cho
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
1. Xem thêm Chữ ký PythonDanh sách trường thông tin .

tùy chọn

:abstractmethod: (không giá trị)

Chỉ ra phương thức là một phương thức trừu tượng

Mới trong phiên bản 2. 1

:async: (không giá trị)

Cho biết phương thức này là một phương thức không đồng bộ

Mới trong phiên bản 2. 1

:canonical: (tên đủ tiêu chuẩn đầy đủ bao gồm module name)

Mô tả vị trí nơi đối tượng được xác định nếu đối tượng được nhập từ các mô-đun khác

Mới trong phiên bản 4. 0

:classmethod: (không giá trị)

Chỉ ra phương thức là một phương thức lớp

Mới trong phiên bản 2. 1

:final: (không giá trị)

Cho biết lớp là một phương thức cuối cùng

Mới trong phiên bản 3. 1

:staticmethod: (không giá trị)

Chỉ ra phương thức là một phương thức tĩnh

Mới trong phiên bản 2. 1

.. py. phương pháp tĩnh. tên(tham số)

Giống như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
36, nhưng chỉ ra rằng phương thức này là một phương thức tĩnh

Mới trong phiên bản 0. 4

.. py. phương pháp phân loại. tên(tham số)

Giống như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
36, nhưng chỉ ra rằng phương thức này là một phương thức của lớp

Mới trong phiên bản 0. 6

.. py. người trang trí. tên. py. người trang trí. tên(tham số)

Mô tả một chức năng trang trí. Chữ ký phải đại diện cho việc sử dụng như một trang trí. Ví dụ, với các chức năng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator

các mô tả sẽ trông như thế này

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
0

(trái ngược với

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
92. )

Không có vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
93 nào để liên kết với một trình trang trí được đánh dấu bằng chỉ thị này;

.. py. phương pháp trang trí. tên. py. phương pháp trang trí. tên(chữ ký)

Tương tự như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
95, nhưng đối với decorators là các phương thức

Tham khảo phương thức trang trí bằng cách sử dụng vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
96

Chữ ký Python¶

Chữ ký của các hàm, phương thức và hàm tạo lớp có thể được cung cấp giống như chúng sẽ được viết bằng Python

Giá trị mặc định cho các đối số tùy chọn có thể được cung cấp (nhưng nếu chúng chứa dấu phẩy, chúng sẽ gây nhầm lẫn cho trình phân tích cú pháp chữ ký). Các chú thích đối số kiểu 3 của Python cũng có thể được cung cấp cũng như các chú thích kiểu trả về

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
3

Đối với các hàm có tham số tùy chọn không có giá trị mặc định (thường là các hàm được triển khai trong mô-đun mở rộng C mà không hỗ trợ đối số từ khóa), bạn có thể sử dụng dấu ngoặc để chỉ định các phần tùy chọn

biên dịch(nguồn[ , filename[, symbol]])

Theo thông lệ, đặt dấu ngoặc mở trước dấu phẩy

Danh sách trường thông tin¶

Mới trong phiên bản 0. 4

Đã thay đổi trong phiên bản 3. 0. các trường meta được thêm vào.

Bên trong các chỉ thị mô tả đối tượng Python, danh sách trường reST với các trường này được nhận dạng và định dạng độc đáo

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    97,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    98, ________ 399, ________ 1200, ________ 1201, _______ 1202. Mô tả của một tham số

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    203. Loại tham số. Tạo một liên kết nếu có thể

  • ________ 1204, ________ 1205, ________ 1206, ________ 1207. Điều đó (và khi nào) một ngoại lệ cụ thể được nêu ra

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    208,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    209,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    210. Mô tả của một biến

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    211. Loại biến. Tạo một liên kết nếu có thể

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    212,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    213. Mô tả giá trị trả về

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    214. loại trả lại. Tạo một liên kết nếu có thể

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    215. Thêm siêu dữ liệu vào mô tả của đối tượng python. Siêu dữ liệu sẽ không được hiển thị trên tài liệu đầu ra. Ví dụ:
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    216 cho biết đối tượng python là thành viên riêng tư. Nó được sử dụng trong
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    217 để lọc thành viên

Ghi chú

Trong bản phát hành hiện tại, tất cả

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
208,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
209 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
210 được biểu diễn dưới dạng "Biến". Không có sự khác biệt nào cả

Tên trường phải bao gồm một trong những từ khóa này và một đối số (ngoại trừ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
212 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
214, không cần đối số). Điều này được giải thích tốt nhất bằng một ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
9

Điều này sẽ hiển thị như thế này

send_message(người gửi , người nhận, message_body[, priority=1])

Gửi tin nhắn cho người nhận

Thông số .
  • sender (str) – Người gửi tin nhắn

  • người nhận (str) – Người nhận tin nhắn

  • message_body (str) – Nội dung của tin nhắn

  • priority (integer or None) – Mức độ ưu tiên của tin nhắn, có thể là số 1-5

Trả về .

id tin nhắn

Loại trả về .

int

Tăng .
  • ValueError – nếu message_body vượt quá 160 ký tự

  • TypeError – nếu message_body không phải là một chuỗi cơ sở

Cũng có thể kết hợp loại tham số và mô tả, nếu loại là một từ đơn, như thế này

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
20

Mới trong phiên bản 1. 5

Các loại vùng chứa như danh sách và từ điển có thể được liên kết tự động bằng cú pháp sau

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
21

Nhiều loại trong một trường loại sẽ được liên kết tự động nếu được phân tách bằng từ “hoặc”

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
22

Tham chiếu chéo các đối tượng Python¶

Các vai trò sau đề cập đến các đối tượng trong mô-đun và có thể được siêu liên kết nếu tìm thấy mã định danh phù hợp

:py:mod:

Tham khảo một mô-đun; . Điều này cũng nên được sử dụng cho tên gói

:py:func:

Tham khảo một hàm Python; . Văn bản vai trò không cần bao gồm dấu ngoặc đơn để tăng cường khả năng đọc;

:py:data:

Tham chiếu một biến cấp mô-đun

:py:const:

Tham chiếu một hằng số "được xác định". Đây có thể là một biến Python không có ý định thay đổi

:py:class:

Tham khảo một lớp học;

:py:meth:

Tham chiếu một phương thức của một đối tượng. Văn bản vai trò có thể bao gồm tên loại và tên phương thức; . Một tên chấm có thể được sử dụng

:py:attr:

Tham chiếu một thuộc tính dữ liệu của một đối tượng

Ghi chú

Vai trò cũng có thể đề cập đến tài sản

:py:exc:

Tham khảo một ngoại lệ. Một tên chấm có thể được sử dụng

:py:obj:

Tham chiếu một đối tượng thuộc loại không xác định. hữu ích e. g. như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
225

Mới trong phiên bản 0. 4

Tên kèm theo trong phần đánh dấu này có thể bao gồm tên mô-đun và/hoặc tên lớp. Ví dụ:

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
226 có thể tham chiếu đến hàm có tên là
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
227 trong mô-đun hiện tại hoặc hàm tích hợp có tên đó. Ngược lại,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
228 đề cập rõ ràng đến hàm
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
227 trong mô-đun
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
230

Thông thường, tên trong các vai trò này được tìm kiếm trước tiên mà không cần thêm bất kỳ phẩm chất nào, sau đó với tên mô-đun hiện tại được thêm vào trước, sau đó với tên mô-đun và lớp hiện tại (nếu có) được thêm vào trước. Nếu bạn đặt trước tên bằng dấu chấm, thứ tự này sẽ bị đảo ngược. Ví dụ: trong tài liệu về mô-đun

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
231 của Python,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
232 luôn đề cập đến chức năng tích hợp sẵn, trong khi
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
233 đề cập đến
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
234

Một phương pháp phỏng đoán tương tự được sử dụng để xác định xem tên đó có phải là một thuộc tính của lớp đang được ghi lại hay không

Ngoài ra, nếu tên có tiền tố là dấu chấm và không tìm thấy kết quả khớp chính xác, thì mục tiêu được lấy làm hậu tố và tất cả các tên đối tượng có hậu tố đó đều được tìm kiếm. Ví dụ:

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
235 tham chiếu hàm
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
236, ngay cả khi mô-đun hiện tại không phải là
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
237. Vì điều này có thể trở nên mơ hồ, nếu có nhiều hơn một khả năng trùng khớp, bạn sẽ nhận được cảnh báo từ Sphinx

Lưu ý rằng bạn có thể kết hợp các tiền tố

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
08 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
239.
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
240 sẽ tham chiếu phương pháp
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
236, nhưng chú thích liên kết hiển thị sẽ chỉ là
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
242

Miền C¶

Miền C (tên c) phù hợp với tài liệu về API C

.. c. thành viên. khai báo. c. var. khai báo

Mô tả một thành viên cấu trúc C hoặc biến. chữ ký ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
23

Sự khác biệt giữa hai chỉ thị chỉ là mỹ phẩm

.. c. hàm số. chức năng nguyên mẫu

Mô tả một chức năng C. Chữ ký phải được đưa ra như trong C, e. g

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
24

Lưu ý rằng bạn không phải dấu sao thoát dấu gạch chéo ngược trong chữ ký, vì nó không được phân tích cú pháp bởi nội tuyến reST

Trong phần mô tả chức năng, bạn có thể sử dụng các trường thông tin sau (xem thêm Danh sách trường thông tin ).

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    97,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    98,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    99,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    200, Mô tả tham số

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    203. Loại tham số, được viết như thể được truyền cho vai trò
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    248

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    212,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    213. Mô tả giá trị trả về

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    214. Loại trả về, được viết như thể được truyền cho vai trò
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    248

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    253,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    254. Một giải pháp thay thế cho
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    212 để mô tả kết quả của hàm

Mới trong phiên bản 4. 3. Loại trường

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
253.

Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
25

mà ám như

PyObject *PyType_GenericAlloc(PyTypeObject *type, Py_ssize_t nitems)
Parameters:
  • loại - mô tả của tham số đầu tiên

  • nitems – mô tả của tham số thứ hai

Trả về .

một kết quả

Trả về giá trị .
  • NULL - trong một số điều kiện

  • NULL - trong một số điều kiện khác

.. c. vĩ mô. tên. c. vĩ mô. tên(arg danh sách)

Mô tả một macro C, i. e. , ngôn ngữ C

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
257, không có văn bản thay thế

Trong phần mô tả macro, bạn có thể sử dụng các trường thông tin giống như đối với chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
258

Mới trong phiên bản 3. 0. Biến thể kiểu hàm.

.. c. cấu trúc. tên

Mô tả cấu trúc C

Mới trong phiên bản 3. 0

.. c. liên hiệp. tên

Mô tả một hiệp hội C

Mới trong phiên bản 3. 0

.. c. liệt kê. tên

Mô tả một C enum

Mới trong phiên bản 3. 0

.. c. điều tra viên. tên

Mô tả một điều tra viên C

Mới trong phiên bản 3. 0

.. c. loại hình. typedef-like khai báo. c. loại hình. tên

Mô tả một loại C, dưới dạng typedef hoặc bí danh cho một loại không xác định

Cấu trúc C tham chiếu chéo¶

Các vai trò sau đây tạo tham chiếu chéo đến các cấu trúc ngôn ngữ C nếu chúng được định nghĩa trong tài liệu

:c:member:. c. dữ liệu. . c. var. . c. chức năng. . c. vĩ mô. . c. cấu trúc. . c. liên hiệp. . c. liệt kê. . c. điều tra viên. . c. loại hình.

Tham chiếu một khai báo C, như đã định nghĩa ở trên. Lưu ý rằng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
259,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
260 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
261 là tương đương

Mới trong phiên bản 3. 0. Vai trò var, struct, union, enum và enumerator.

Thực thể ẩn danh¶

C hỗ trợ các cấu trúc ẩn danh, enums và công đoàn. Vì lợi ích của tài liệu, họ phải được đặt một số tên bắt đầu bằng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
262, e. g. ,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
263 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
264. Những tên này cũng có thể được sử dụng trong tham chiếu chéo, mặc dù các ký hiệu lồng nhau sẽ được tìm thấy ngay cả khi bị bỏ qua. Tên
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
265 sẽ luôn được hiển thị là [ẩn danh] (có thể là một liên kết)

Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
26

Điều này sẽ được kết xuất như

struct Dữ liệu
liên kết [anonymous]
int a
double b

Explicit ref:

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
266. Short-hand ref:
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
267.

Mới trong phiên bản 3. 0

Khai báo bí danh¶

Đôi khi, việc khai báo danh sách có thể hữu ích ở nơi khác ngoài tài liệu chính của chúng, chẳng hạn như. g. , khi tạo bản tóm tắt giao diện. Chỉ thị sau đây có thể được sử dụng cho mục đích này

.. c. bí danh. tên

Chèn một hoặc nhiều khai báo bí danh. Mỗi thực thể có thể được chỉ định khi chúng có thể trong vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
268

Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
27

trở thành

int dữ liệu
int f(double k)
int data
int f(double k)

New in version 3.2.

Tùy chọn

:maxdepth: int

Chèn cả các khai báo lồng nhau, lên đến tổng độ sâu đã cho. Sử dụng 0 cho độ sâu vô hạn và 1 cho khai báo đã đề cập. Mặc định là 1

Mới trong phiên bản 3. 3

:noroot:

Bỏ qua các khai báo đã đề cập và chỉ hiển thị các khai báo lồng nhau. Yêu cầu

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
269 hoặc 0 hoặc ít nhất 2

Mới trong phiên bản 3. 5

Biểu thức và kiểu nội tuyến¶

:c:expr:. c. texpr.

Chèn một biểu thức C hoặc nhập dưới dạng mã nội tuyến (______1270) hoặc văn bản nội tuyến (

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
271). Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
28

sẽ được kết xuất như sau

int a = 42
int f(int i)

An expression: a * f(a . ) (or as text: a * f(a . )).

Một loại. const Dữ liệu* (hoặc dưới dạng văn bản const Data*).

Mới trong phiên bản 3. 0

Không gian tên¶

Mới trong phiên bản 3. 1

Bản thân ngôn ngữ C không hỗ trợ không gian tên, nhưng đôi khi có thể hữu ích khi mô phỏng nó trong tài liệu, e. g. , để hiển thị các khai báo thay thế. Tính năng này cũng có thể được sử dụng để ghi lại các thành viên của structs/unions/enums tách biệt với khai báo gốc của chúng

Phạm vi hiện tại có thể được thay đổi bằng cách sử dụng ba chỉ thị không gian tên. Họ quản lý khai báo ngăn xếp trong đó

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
272 đặt lại ngăn xếp và thay đổi phạm vi nhất định

Chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
273 thay đổi phạm vi thành phạm vi bên trong nhất định của phạm vi hiện tại

Chỉ thị ________ 1274 hoàn tác chỉ thị ________ 1273 gần đây nhất

.. c. không gian tên. phạm vi đặc điểm kỹ thuật

Thay đổi phạm vi hiện tại cho các đối tượng tiếp theo thành phạm vi đã cho và đặt lại ngăn xếp chỉ thị không gian tên. Lưu ý rằng phạm vi lồng nhau có thể được chỉ định bằng cách phân tách bằng dấu chấm, e. g

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
29

Tất cả các đối tượng tiếp theo sẽ được định nghĩa như thể tên của chúng được khai báo với phạm vi được thêm vào trước. Các tham chiếu chéo tiếp theo sẽ được tìm kiếm bắt đầu trong phạm vi hiện tại

Sử dụng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
276 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
277 làm phạm vi sẽ thay đổi thành phạm vi toàn cầu

.. c. đẩy không gian tên. phạm vi đặc điểm kỹ thuật

Thay đổi phạm vi tương ứng với phạm vi hiện tại. Ví dụ, sau khi

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
40

phạm vi hiện tại sẽ là

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
278

.. c. không gian tên-pop.

Hoàn tác lệnh

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
273 trước đó (không chỉ bật một phạm vi). Ví dụ, sau khi

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
41

phạm vi hiện tại sẽ là

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
280 (không phải
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
281)

Nếu không có lệnh

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
273 nào trước đó được sử dụng mà chỉ sử dụng lệnh
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
272 thì phạm vi hiện tại sẽ được đặt lại thành phạm vi toàn cầu. Tức là,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
284 tương đương với

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
42

Biến cấu hình¶

Xem Tùy chọn cho miền C .

Miền C++¶

Miền C++ (tên cpp) hỗ trợ ghi lại các dự án C++

Chỉ thị cho các thực thể khai báo¶

Các chỉ thị sau đây có sẵn. Tất cả các khai báo có thể bắt đầu bằng một tuyên bố về khả năng hiển thị (

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
285,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
286 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
287)

.. cpp. lớp. lớp chỉ định. cpp. cấu trúc. lớp trình xác định

Mô tả một lớp/cấu trúc, có thể với đặc điểm kỹ thuật kế thừa, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
43

Sự khác biệt giữa

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
288 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
289 chỉ là thẩm mỹ. tiền tố được hiển thị trong đầu ra và trình xác định được hiển thị trong chỉ mục

Lớp có thể được khai báo trực tiếp bên trong một phạm vi lồng nhau, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
44

Một mẫu lớp có thể được khai báo

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
45

hoặc với một ngắt dòng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
46

Chuyên môn mẫu đầy đủ và một phần có thể được khai báo

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
47

Mới trong phiên bản 2. 0. Chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
289.

.. cpp. hàm số. (thành viên) chức năng nguyên mẫu

Mô tả một chức năng hoặc chức năng thành viên, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
48

Mẫu chức năng cũng có thể được mô tả

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
49

và chuyên môn mẫu chức năng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
80

.. cpp. thành viên. (thành viên) biến khai báo.. cpp. var. (thành viên) biến khai báo

Mô tả một biến hoặc biến thành viên, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
81

Các mẫu biến cũng có thể được mô tả

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
82

.. cpp. loại hình. typedef khai báo. cpp. loại hình. tên. cpp. loại hình. loại bí danh khai báo

Mô tả một loại như trong khai báo typedef, khai báo bí danh loại hoặc đơn giản là tên của loại có loại không xác định, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
83

Một bí danh loại cũng có thể được tạo khuôn mẫu

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
84

Ví dụ được hiển thị như sau

typedef std. vectơ<int> MyList .

A typedef-like declaration of a type.

type MyContainer. const_iterator

Khai báo bí danh loại có loại không xác định.

sử dụng MyType = std. unordered_map<int, std . ::chuỗi>

Khai báo bí danh loại.

mẫu<tên loại T>
using MyContainer = std::vectơ<T> ¶ .
.. cpp. liệt kê. không có phạm vi enum khai báo. cpp. enum-cấu trúc. phạm vi enum khai báo. cpp. lớp enum. phạm vi enum khai báo

Mô tả một enum (phạm vi), có thể với loại cơ bản được chỉ định. Bất kỳ điều tra viên nào được khai báo bên trong một unscoped enum sẽ được khai báo cả trong phạm vi enum và trong phạm vi cha. ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
85

.. cpp. điều tra viên. tên. cpp. điều tra viên. tên = hằng số

Mô tả một điều tra viên, tùy chọn với giá trị được xác định, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
86

.. cpp. liên hiệp. tên

Mô tả một hiệp hội

Mới trong phiên bản 1. 8

.. cpp. ý tưởng. danh sách tham số mẫu tên

Cảnh báo

Hỗ trợ cho các khái niệm là thử nghiệm. Nó dựa trên tiêu chuẩn dự thảo hiện tại và Thông số kỹ thuật khái niệm. Các tính năng có thể thay đổi khi chúng phát triển

Mô tả một khái niệm. Nó phải có chính xác 1 danh sách tham số mẫu. Tên có thể là một tên lồng nhau. Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
87

Điều này sẽ hiển thị như sau

mẫu<tên loại >
concept std::Trình lặp

Proxy cho một phần tử của chuỗi danh nghĩa có thể được so sánh, gián tiếp hoặc tăng dần.

ký hiệu

r

Một giá trị.

Biểu thức hợp lệ

  • *r , khi r có thể hủy đăng ký.

  • ++r , với kiểu trả về It& . , when r is incrementable.

Mới trong phiên bản 1. 5

Tùy chọn¶

Một số tùy chọn hỗ trợ chỉ thị

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    4 và
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    5, xem Đánh dấu cơ bản .

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    293, đối với khai báo theo khuôn mẫu. Nếu được chỉ định, mỗi tham số mẫu sẽ được hiển thị trên một dòng riêng biệt

    Mới trong phiên bản 1. 6

Thực thể ẩn danh¶

C++ hỗ trợ các không gian tên ẩn danh, các lớp, enum và các công đoàn. Vì lợi ích của tài liệu, họ phải được đặt một số tên bắt đầu bằng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
262, e. g. ,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
263 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
264. Những tên này cũng có thể được sử dụng trong tham chiếu chéo và biểu thức (loại), mặc dù các ký hiệu lồng nhau sẽ được tìm thấy ngay cả khi bị bỏ qua. Tên
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
265 sẽ luôn được hiển thị là [ẩn danh] (có thể là một liên kết)

Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
88

Điều này sẽ được kết xuất như

lớp Dữ liệu
công đoàn [anonymous]
int a
double b

Explicit ref:

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
298. Short-hand ref:
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
299.

Mới trong phiên bản 1. 8

Khai báo bí danh¶

Đôi khi, việc khai báo danh sách có thể hữu ích ở nơi khác ngoài tài liệu chính của chúng, chẳng hạn như. g. , khi tạo bản tóm tắt giao diện lớp. Chỉ thị sau đây có thể được sử dụng cho mục đích này

.. cpp. bí danh. tên hoặc chức năng chữ ký

Chèn một hoặc nhiều khai báo bí danh. Mỗi thực thể có thể được chỉ định như họ có thể trong vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
400. Nếu tên của một chức năng được đưa ra (trái ngược với chữ ký đầy đủ), thì tất cả các quá tải của chức năng sẽ được liệt kê

Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
89

trở thành

int a
void f(double d) const
void f(double d)
void f(int i)
void f()

whereas:

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
90

trở thành

void f(gấp đôi d) const
void f(double d)

New in version 2.0.

Tùy chọn

:maxdepth: int

Chèn cả các khai báo lồng nhau, lên đến tổng độ sâu đã cho. Sử dụng 0 cho độ sâu vô hạn và 1 cho khai báo đã đề cập. Mặc định là 1

Mới trong phiên bản 3. 5

:noroot:

Bỏ qua các khai báo đã đề cập và chỉ hiển thị các khai báo lồng nhau. Yêu cầu

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
269 hoặc 0 hoặc ít nhất 2

Mới trong phiên bản 3. 5

Các mẫu bị ràng buộc¶

Cảnh báo

Hỗ trợ cho các khái niệm là thử nghiệm. Nó dựa trên tiêu chuẩn dự thảo hiện tại và Thông số kỹ thuật khái niệm. Các tính năng có thể thay đổi khi chúng phát triển

Ghi chú

Sphinx hiện không hỗ trợ mệnh đề

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
402

Giữ chỗ¶

Các khai báo có thể sử dụng tên của một khái niệm để giới thiệu các tham số mẫu bị ràng buộc hoặc từ khóa

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
403 để giới thiệu các tham số mẫu không bị ràng buộc

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
91

Giới thiệu mẫu¶

Các mẫu chức năng hoặc lớp bị ràng buộc đơn giản có thể được khai báo bằng phần giới thiệu mẫu thay vì danh sách tham số mẫu

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
92

Chúng được hiển thị như sau

tiêu chuẩn. Trình lặp{}
void . advance(It &it)

A function template with a template parameter constrained to be an Iterator.

tiêu chuẩn. LessThanComparable{T}
lớp . MySortedContainer

A class template with a template parameter constrained to be LessThanComparable.

Tuy nhiên, xin lưu ý rằng không có kiểm tra nào được thực hiện đối với khả năng tương thích của tham số. e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
404 sẽ được chấp nhận làm phần giới thiệu mặc dù nó không hợp lệ C++

Biểu thức và kiểu nội tuyến¶

:cpp:expr:. cpp. texpr.

Chèn một biểu thức C++ hoặc nhập dưới dạng mã nội tuyến (______1270) hoặc văn bản nội tuyến (

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
271). Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
93

sẽ được kết xuất như sau

int a = 42
int f(int i)

An expression: a * f(a . ) (or as text: a * f(a . )).

Một loại. const MySortedContainer<int> . & (or as text const MySortedContainer<int>&).

Mới trong phiên bản 1. 7. Vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
270.

Mới trong phiên bản 1. 8. Vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
271.

Không gian tên¶

Các khai báo trong miền C++ được đặt mặc định trong phạm vi toàn cầu. Phạm vi hiện tại có thể được thay đổi bằng cách sử dụng ba chỉ thị không gian tên. Họ quản lý khai báo ngăn xếp trong đó

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
409 đặt lại ngăn xếp và thay đổi phạm vi nhất định

Chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
410 thay đổi phạm vi thành phạm vi bên trong nhất định của phạm vi hiện tại

Chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
411 hoàn tác chỉ thị
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
410 gần đây nhất

.. cpp. không gian tên. phạm vi đặc điểm kỹ thuật

Thay đổi phạm vi hiện tại cho các đối tượng tiếp theo thành phạm vi đã cho và đặt lại ngăn xếp chỉ thị không gian tên. Lưu ý rằng không gian tên không cần phải tương ứng với không gian tên C++, nhưng có thể kết thúc bằng tên của các lớp, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
94

Tất cả các đối tượng tiếp theo sẽ được định nghĩa như thể tên của chúng được khai báo với phạm vi được thêm vào trước. Các tham chiếu chéo tiếp theo sẽ được tìm kiếm bắt đầu trong phạm vi hiện tại

Sử dụng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
276,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
277 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
415 làm phạm vi sẽ thay đổi thành phạm vi toàn cầu

Một khai báo không gian tên cũng có thể được tạo khuôn mẫu, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
95

khai báo

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
416 là một hàm thành viên của mẫu lớp
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
417. Tương tự, điều này có thể đã được khai báo bằng cách sử dụng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
96

hoặc

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
97

.. cpp. đẩy không gian tên. phạm vi đặc điểm kỹ thuật

Thay đổi phạm vi tương ứng với phạm vi hiện tại. Ví dụ, sau khi

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
98

phạm vi hiện tại sẽ là

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
418

Mới trong phiên bản 1. 4

.. cpp. không gian tên-pop.

Hoàn tác lệnh

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
410 trước đó (không chỉ bật một phạm vi). Ví dụ, sau khi

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
99

phạm vi hiện tại sẽ là

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
420 (không phải
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
421)

Nếu không có lệnh

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
410 nào trước đó được sử dụng mà chỉ sử dụng lệnh
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
409 thì phạm vi hiện tại sẽ được đặt lại thành phạm vi toàn cầu. Đó là,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
424 tương đương với

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
20

Mới trong phiên bản 1. 4

Danh sách trường thông tin¶

Tất cả các lệnh C++ để khai báo thực thể đều hỗ trợ các trường thông tin sau (xem thêm Danh sách trường thông tin ).

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    425. Mô tả tham số mẫu

Chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
426 hỗ trợ thêm các trường sau

  • ________ 397, ________ 398, ________ 399, ________ 1200. Mô tả của một tham số

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    212,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    213. Mô tả giá trị trả về

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    253,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    254. Một giải pháp thay thế cho
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    212 để mô tả kết quả của hàm

  • ném, ném, ngoại lệ. Mô tả về một ngoại lệ có thể bị ném

Mới trong phiên bản 4. 3. Loại trường

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
253.

Tham khảo chéo¶

Các vai trò này liên kết với các loại khai báo đã cho

:cpp:any:. cpp. lớp. . cpp. cấu trúc. . cpp. chức năng. . cpp. thành viên. . cpp. var. . cpp. loại hình. . cpp. ý tưởng. . cpp. liệt kê. . cpp. điều tra viên.

Tham khảo khai báo C++ theo tên (xem bên dưới để biết chi tiết). Tên phải đủ tiêu chuẩn so với vị trí của liên kết

Mới trong phiên bản 2. 0. Vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
289 làm bí danh cho vai trò
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
288.

Lưu ý về Tham chiếu với Tham số/Đối số Mẫu

Những vai trò này tuân theo quy tắc Cú pháp tham chiếu chéo của Sphinx. Điều này có nghĩa là phải cẩn thận khi tham khảo chuyên môn hóa mẫu (một phần), e. g. nếu liên kết trông như thế này.

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
439. Điều này được hiểu là một liên kết đến
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
440 với tiêu đề là
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
441. Trong trường hợp này, thoát khỏi khung góc mở bằng dấu gạch chéo ngược, như thế này.
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
442.

Khi không cần tiêu đề tùy chỉnh, có thể hữu ích khi sử dụng các vai trò cho biểu thức nội tuyến,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
270 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
271, trong đó dấu ngoặc nhọn không cần thoát

Tuyên bố không có tham số mẫu và đối số mẫu¶

Để liên kết đến các khai báo không theo khuôn mẫu, tên phải là tên lồng nhau, e. g. ,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
445 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
446

Các hàm (thành viên) bị quá tải¶

Khi một hàm (thành viên) được tham chiếu chỉ bằng tên của nó, tham chiếu sẽ trỏ đến quá tải so khớp tùy ý. Vai trò

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
400 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
448 sử dụng định dạng thay thế, đơn giản là một khai báo hàm hoàn chỉnh. Điều này sẽ giải quyết tình trạng quá tải đối sánh chính xác. Ví dụ, hãy xem xét khai báo lớp sau

lớp C
vô hiệu f(double d) const
void f(double d)
void f(int i)
void f()

References using the

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
448 role:

  • quá tải tùy ý.

    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    450,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    451

  • Cũng quá tải tùy ý.

    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    451,
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    451

  • quá tải cụ thể. ________ 1454, ________ 1454

  • quá tải cụ thể. ________ 1456, ________ 1456

  • quá tải cụ thể. ________ 1458, ________ 1458

  • quá tải cụ thể. ________ 1460, ________ 1460

Lưu ý rằng biến cấu hình

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
223 không ảnh hưởng đến các tham chiếu quá tải cụ thể

Khai báo theo khuôn mẫu¶

Giả sử các khai báo sau

lớp Trình bao bọc
mẫu<typename TOuter>
class Outer
template<typename TInner>
class Inner

In general the reference must include the template parameter declarations, and template arguments for the prefix of qualified names. For example:

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    463 (
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    464)

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    465 (
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    466)

Hiện tại, việc tra cứu chỉ thành công nếu các mã định danh tham số mẫu là các chuỗi bằng nhau. Tức là,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
467 sẽ không hoạt động

Là một ký hiệu tốc ký, nếu một danh sách tham số mẫu bị bỏ qua, thì tra cứu sẽ giả sử một mẫu chính hoặc một mẫu không phải mẫu, nhưng không phải là chuyên môn hóa một phần mẫu. Điều này có nghĩa là các tài liệu tham khảo sau đây cũng hoạt động

  • ________ 1468 (________ 1468)

  • ________ 1470 (________ 1470)

  • def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    472 (
    def removename(func):
        func.__name__ = ''
        return func
    
    def setnewname(name):
        def decorator(func):
            func.__name__ = name
            return func
        return decorator
    
    473)

(Đầy đủ) Chuyên môn Mẫu¶

Giả sử các khai báo sau

mẫu<tên loại TOuter>
class Outer
template<typename TInner>
class Inner
template<>
class Outer<int>
template<typename TInner>
class Inner
template<>
class Inner<bool>

In general the reference must include a template parameter list for each template argument list. The full specialisation above can therefore be referenced with

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
474 (
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
475) and
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
476 (
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
477). As a shorthand the empty template parameter list can be omitted, e.g.,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
478 (
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
479) and
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
480 (
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
481).

Chuyên môn hóa một phần mẫu¶

Giả sử khai báo sau

mẫu<tên loại T>
class Outer<T*>

References to partial specialisations must always include the template parameter lists, e.g.,

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
482 (
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
483). Currently the lookup only succeed if the template parameter identifiers are equal strings.

Biến cấu hình¶

Xem Tùy chọn cho miền C++ .

Tên miền tiêu chuẩn¶

Cái gọi là tên miền “tiêu chuẩn” thu thập tất cả các đánh dấu không đảm bảo tên miền của riêng nó. Các chỉ thị và vai trò của nó không có tiền tố là một tên miền

Miền tiêu chuẩn cũng là nơi đặt các mô tả đối tượng tùy chỉnh, được thêm bằng cách sử dụng API

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
484

Có một bộ chỉ thị cho phép ghi lại các chương trình dòng lệnh

.. tùy chọn. tên đối số, tên đối số, ...

Mô tả một đối số dòng lệnh hoặc chuyển đổi. Tên đối số tùy chọn phải được đặt trong dấu ngoặc nhọn. ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
21

Lệnh này sẽ tạo các mục tiêu tham chiếu chéo cho các tùy chọn đã cho, có thể tham chiếu trước

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
485 (trong trường hợp ví dụ, bạn sẽ sử dụng thứ gì đó như
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
486,
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
487 hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
488)

Đã thay đổi trong phiên bản 5. 3. Người ta có thể tham khảo chéo bao gồm cả giá trị tùy chọn.

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
489, ,``. quyền mua. –module[=foobar]`` hoặc
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
490.

Sử dụng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
491 để phân tích cú pháp "phần biến" của văn bản chữ (tương tự như vai trò
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
492)

Chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
493 là bí danh không dùng nữa cho chỉ thị
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
485

.. envvar. tên

Mô tả một biến môi trường mà mã tài liệu hoặc chương trình sử dụng hoặc định nghĩa. Có thể tham khảo bởi

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
495

.. chương trình. tên

Giống như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
35, lệnh này không tạo ra kết quả nào. Thay vào đó, nó phục vụ để thông báo cho Sphinx rằng tất cả các tùy chọn tài liệu chỉ thị sau đây của
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
485 cho chương trình được gọi là tên

Nếu bạn sử dụng

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
498, bạn phải xác định các tham chiếu trong vai trò
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
485 của mình theo tên chương trình, vì vậy nếu bạn gặp trường hợp sau

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
22

thì

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
800 sẽ đề cập đến tùy chọn đầu tiên, trong khi
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
801 sẽ đề cập đến tùy chọn thứ hai

Nếu

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
802 được chuyển đến đối số, lệnh sẽ đặt lại tên chương trình hiện tại

Tên chương trình có thể chứa khoảng trắng (trong trường hợp bạn muốn ghi lại các lệnh con như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
803 và
def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
804 một cách riêng biệt)

Mới trong phiên bản 0. 5

Ngoài ra còn có một chỉ thị mô tả đối tượng rất chung chung, không gắn với bất kỳ miền nào

.. mô tả. văn bản. đối tượng. văn bản

Lệnh này tạo định dạng giống như định dạng cụ thể được cung cấp bởi các miền, nhưng không tạo mục nhập chỉ mục hoặc mục tiêu tham chiếu chéo. Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
23

Miền JavaScript¶

Miền JavaScript (tên js) cung cấp các lệnh sau

.. js. mô-đun. tên

Lệnh này đặt tên mô-đun cho các khai báo đối tượng theo sau. Tên mô-đun được sử dụng trong chỉ mục mô-đun chung và trong các tham chiếu chéo. Ví dụ, lệnh này không tạo tiêu đề đối tượng như

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
805

Theo mặc định, lệnh này sẽ tạo một thực thể có thể liên kết và sẽ tạo ra một mục nhập trong chỉ mục mô-đun chung, trừ khi tùy chọn

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
806 được chỉ định. Nếu tùy chọn này được chỉ định, lệnh sẽ chỉ cập nhật tên mô-đun hiện tại

Mới trong phiên bản 1. 6

Đã thay đổi trong phiên bản 5. 2. Chỉ thị mô-đun hỗ trợ nội dung cơ thể.

.. js. hàm số. tên(chữ ký)

Mô tả một hàm hoặc phương thức JavaScript. Nếu bạn muốn mô tả các đối số dưới dạng tùy chọn, hãy sử dụng dấu ngoặc vuông dưới dạng được ghi lại cho chữ ký Python.

Bạn có thể sử dụng các trường để cung cấp thêm chi tiết về các đối số và các loại dự kiến ​​của chúng, các lỗi mà hàm có thể đưa ra và giá trị được trả về

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
24

Điều này được kết xuất như

$. getJSON(href , gọi lại . [, errback])Arguments:
  • href ( ____1807 ) – Một URI tới vị trí của tài nguyên.

  • gọi lại - Được gọi với đối tượng

  • errback – Được gọi trong trường hợp yêu cầu không thành công. Và rất nhiều văn bản khác nên chúng tôi cần nhiều dòng

Ném .

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
808 – Vì bất kỳ lý do gì trong trường hợp đó.

Trả về .

Thứ gì đó

.. js. phương pháp. tên(chữ ký)

Lệnh này là bí danh của

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
809, tuy nhiên, nó mô tả một chức năng được triển khai như một phương thức trên một đối tượng lớp

Mới trong phiên bản 1. 6

.. js. lớp. tên

Mô tả một constructor tạo ra một đối tượng. Về cơ bản, đây giống như một hàm nhưng sẽ hiển thị với tiền tố lớp

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
25

Điều này được kết xuất như

lớp MyAnimal(tên[, age])Arguments:
  • name ( ____1807 ) – Tên của con vật

  • tuổi ( ____1811 ) – tuổi tùy chọn cho động vật

.. js. dữ liệu. tên

Mô tả một biến toàn cục hoặc hằng số

.. js. thuộc tính. đối tượng. tên

Mô tả tên thuộc tính của đối tượng

Các vai trò này được cung cấp để chỉ các đối tượng được mô tả

:js:mod:. js. chức năng. . js. meth. . js. lớp. . js. dữ liệu. . js. attr.

Miền tái cấu trúc¶

Miền reStructuredText (tên rst) cung cấp các chỉ thị sau

.. đầu tiên. chỉ thị. tên

Mô tả một chỉ thị reST. Tên có thể là một tên chỉ thị duy nhất hoặc cú pháp chỉ thị thực tế (. tiền tố và. hậu tố) với các đối số sẽ được hiển thị khác. Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
26

sẽ được kết xuất như

.. foo.

mô tả foo

.. thanh. baz

mô tả thanh

.. đầu tiên. chỉ thị. quyền mua. tên

Mô tả một tùy chọn cho chỉ thị reST. Tên có thể là một tên tùy chọn hoặc tên tùy chọn với các đối số được phân tách bằng dấu hai chấm (

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
812). Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
27

sẽ được kết xuất như

.. toctree. . đầu đề. chú thích của ToC. quả địa cầu.

tùy chọn

:type: mô tả của đối số (văn bản)

Mô tả loại giá trị quyền chọn

Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
28

Mới trong phiên bản 2. 1

.. đầu tiên. vai diễn. tên

Mô tả vai trò nghỉ ngơi. Ví dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
29

sẽ được kết xuất như

foo

mô tả foo

Các vai trò này được cung cấp để chỉ các đối tượng được mô tả

:rst:dir:. đầu tiên. vai diễn.

Lĩnh vực toán học¶

Miền toán học (tên toán học) cung cấp các vai trò sau

:math:numref:

Vai trò đối với các phương trình tham chiếu chéo được xác định bởi chỉ thị

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
813 thông qua nhãn của chúng. Thí dụ

def removename(func):
    func.__name__ = ''
    return func

def setnewname(name):
    def decorator(func):
        func.__name__ = name
        return func
    return decorator
0

Mới trong phiên bản 1. 8

Nhiều tên miền hơn¶

Kho lưu trữ sphinx-contrib chứa nhiều tên miền hơn có sẵn dưới dạng tiện ích mở rộng; . Cũng có sẵn các miền cho Chapel, Common Lisp, dqn, Go, Jinja, Operation và Scala