In danh sách đối tượng python

Trình thông dịch Python có một số hàm và kiểu được tích hợp sẵn luôn sẵn dùng. Chúng được liệt kê ở đây theo thứ tự bảng chữ cái

Chức năng tích hợp sẵn

A

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
4

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
5

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
6

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
7

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
8

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
9


B

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
0

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
1

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
2

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
3

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
4


C

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
5

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
6

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
7

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
8

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
9


D

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63


E

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66


F

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60


G

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62


H

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66


I

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62

L

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65


M

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69


N

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60


O

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64


P

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67





R

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61


S

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69


T

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
600

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
601


V

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
602


Z

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
603


_

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
604

abs[x]

Trả về giá trị tuyệt đối của một số. Đối số có thể là số nguyên, số dấu phẩy động hoặc đối tượng triển khai

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
605. Nếu đối số là một số phức, độ lớn của nó được trả về

aiter[async_iterable]

Trả về một trình lặp không đồng bộ cho một có thể lặp không đồng bộ . Tương đương với việc gọi

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
606.

Ghi chú. Không giống như

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
5 không có biến thể 2 đối số

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

tất cả[có thể lặp lại]

Trả về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu tất cả các phần tử của iterable là đúng [hoặc nếu iterable trống]. Tương đương với

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
6

awaitable anext[async_iterator]awaitable anext[async_iterator , mặc định]

Khi được chờ đợi, hãy trả về mục tiếp theo từ trình lặp không đồng bộ đã cho hoặc mặc định nếu được cung cấp và trình lặp đã hết.

Đây là biến thể không đồng bộ của nội dung dựng sẵn

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60 và hoạt động tương tự

Điều này gọi phương thức

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
611 của async_iterator, trả về awaitable . Đang chờ điều này trả về giá trị tiếp theo của trình vòng lặp. Nếu giá trị mặc định được đưa ra, nó sẽ được trả về nếu bộ vòng lặp đã cạn kiệt, nếu không, thì
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
612 sẽ được nâng lên.

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

bất kỳ[có thể lặp lại]

Trả lại

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu bất kỳ phần tử nào của iterable là true. Nếu iterable trống, trả về
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614. Tương đương với

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
6

ascii[đối tượng]

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69, trả về một chuỗi chứa biểu diễn có thể in được của một đối tượng, nhưng thoát khỏi các ký tự không phải ASCII trong chuỗi được trả về bởi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 bằng cách sử dụng các ký tự thoát
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
617,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
618 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
619. Điều này tạo ra một chuỗi tương tự như chuỗi được trả về bởi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 trong Python 2

bin[x]

Chuyển đổi một số nguyên thành một chuỗi nhị phân có tiền tố là “0b”. Kết quả là một biểu thức Python hợp lệ. Nếu x không phải là một đối tượng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 của Python, thì nó phải xác định một phương thức
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622 trả về một số nguyên. Vài ví dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
1

Nếu muốn hoặc không muốn tiền tố “0b”, bạn có thể sử dụng một trong hai cách sau

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']

Xem thêm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 để biết thêm thông tin

class bool[x=Sai]

Trả về giá trị Boolean, i. e. một trong số

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614. x được chuyển đổi bằng cách sử dụng quy trình kiểm tra độ chính xác tiêu chuẩn. Nếu x là sai hoặc bị bỏ qua, điều này trả về
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614; . Lớp
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
628 là một lớp con của
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 [xem Kiểu số — int, float, complex ]. Nó không thể được phân loại thêm. Phiên bản duy nhất của nó là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 [xem Giá trị Boolean ].

Đã thay đổi trong phiên bản 3. 7. x hiện là tham số chỉ vị trí.

điểm dừng[*args , **kws]

Chức năng này đưa bạn vào trình gỡ lỗi tại trang cuộc gọi. Cụ thể, nó gọi

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
632, đi thẳng qua
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
633 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
634. Theo mặc định, ________ 6632 gọi ________ 6636 dự kiến ​​không có đối số. Trong trường hợp này, đây hoàn toàn là một chức năng tiện lợi, do đó bạn không cần phải nhập rõ ràng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
637 hoặc nhập nhiều mã để vào trình gỡ lỗi. Tuy nhiên,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
632 có thể được đặt thành một số chức năng khác và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
2 sẽ tự động gọi chức năng đó, cho phép bạn chuyển sang trình gỡ lỗi tùy chọn. Nếu không truy cập được
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
632, chức năng này sẽ tăng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
641

Tăng sự kiện kiểm tra

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
642 với đối số
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
643.

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

lớp bytearray[nguồn=b'']lớp bytearray[nguồn , mã hóa]lớp bytearray[nguồn , mã hóa , lỗi]

Trả về một mảng byte mới. Lớp

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
644 là một dãy số nguyên có thể thay đổi trong phạm vi 0 > format[14, '#b'], format[14, 'b'] ['0b1110', '1110'] >>> f'{14:#b}', f'{14:b}' ['0b1110', '1110'] 64

Phạm vi hợp lệ cho đối số là từ 0 đến 1.114.111 [0x10FFFF trong cơ số 16].

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
663 sẽ tăng nếu tôi nằm ngoài phạm vi đó

@phương thức lớp

Chuyển đổi một phương thức thành một phương thức lớp

Một phương thức lớp nhận lớp dưới dạng đối số đầu tiên ngầm định, giống như một phương thức thể hiện nhận thể hiện. Để khai báo một phương thức lớp, hãy sử dụng thành ngữ này

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...

Biểu mẫu

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
664 là một hàm trang trí – xem Định nghĩa hàm for details.

Một phương thức lớp có thể được gọi trên lớp [chẳng hạn như

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
665] hoặc trên một thể hiện [chẳng hạn như
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
666]. Thể hiện bị bỏ qua ngoại trừ lớp của nó. Nếu một phương thức lớp được gọi cho một lớp dẫn xuất, thì đối tượng lớp dẫn xuất được truyền dưới dạng đối số đầu tiên ngụ ý

Các phương thức của lớp khác với các phương thức tĩnh của C++ hoặc Java. Nếu bạn muốn những thứ đó, hãy xem

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66 trong phần này. Để biết thêm thông tin về các phương thức của lớp, hãy xem Hệ thống phân cấp loại tiêu chuẩn .

Đã thay đổi trong phiên bản 3. 9. Các phương thức của lớp hiện có thể bọc các mô tả khác, chẳng hạn như

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67.

Đã thay đổi trong phiên bản 3. 10. Các phương thức lớp hiện kế thừa các thuộc tính phương thức [

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
669,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
670,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
671,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
672 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
673] và có thuộc tính mới
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
674.

Đã thay đổi trong phiên bản 3. 11. Các phương thức của lớp không còn có thể bọc các mô tả khác, chẳng hạn như

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67.

biên dịch[nguồn , tên tệp , chế độ , flags=0 , dont_inherit=Sai , tối ưu hóa=- 1]

Biên dịch nguồn thành mã hoặc đối tượng AST. Các đối tượng mã có thể được thực thi bởi

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66 hoặc
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65. nguồn có thể là một chuỗi bình thường, một chuỗi byte hoặc một đối tượng AST. Tham khảo tài liệu mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
678 để biết thông tin về cách làm việc với các đối tượng AST

Đối số tên tệp sẽ cung cấp tệp mà mã được đọc từ đó;

Đối số chế độ chỉ định loại mã nào phải được biên dịch;

Các cờ đối số tùy chọn và don_inherit kiểm soát tùy chọn trình biên dịch nào sẽ được kích hoạt và tính năng nào trong tương lai< . Nếu không có [hoặc cả hai đều bằng 0], mã được biên dịch với cùng các cờ ảnh hưởng đến mã đang gọi

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
8. Nếu đối số flags được đưa ra và không_inherit không [hoặc bằng 0] thì các tùy chọn trình biên dịch và các câu lệnh trong tương lai được chỉ định bởi đối số flags sẽ được sử dụng ngoài các tùy chọn sẽ được sử dụng. Nếu don_inherit là một số nguyên khác 0 thì đối số flags chính là nó – các cờ [các tính năng trong tương lai và tùy chọn trình biên dịch] trong mã xung quanh sẽ bị bỏ qua. should be allowed. If neither is present [or both are zero] the code is compiled with the same flags that affect the code that is calling
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
8. If the flags argument is given and dont_inherit is not [or is zero] then the compiler options and the future statements specified by the flags argument are used in addition to those that would be used anyway. If dont_inherit is a non-zero integer then the flags argument is it – the flags [future features and compiler options] in the surrounding code are ignored.

Các tùy chọn trình biên dịch và các câu lệnh trong tương lai được chỉ định bởi các bit có thể được OR theo bit cùng nhau để chỉ định nhiều tùy chọn. Trường bit được yêu cầu để chỉ định một tính năng nhất định trong tương lai có thể được tìm thấy dưới dạng thuộc tính

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
685 trên phiên bản
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
686 trong mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
687. Cờ trình biên dịch có thể được tìm thấy trong mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
678, với tiền tố
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
689.

Đối số tối ưu hóa chỉ định mức độ tối ưu hóa của trình biên dịch; . Các mức rõ ràng là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
692 [không tối ưu hóa;
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
693 là đúng],
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
694 [các xác nhận bị xóa,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
693 là sai] hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
696 [các chuỗi tài liệu cũng bị xóa]

Hàm này tăng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
697 nếu nguồn đã biên dịch không hợp lệ và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
663 nếu nguồn chứa byte rỗng

Nếu bạn muốn phân tích mã Python thành biểu diễn AST của nó, hãy xem

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
699

Tăng sự kiện kiểm tra

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
100 với các đối số
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
101 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
102. Sự kiện này cũng có thể được nâng lên bằng cách tổng hợp ngầm.

Ghi chú

Khi biên dịch một chuỗi có mã nhiều dòng ở chế độ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
682 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
681, đầu vào phải được kết thúc bằng ít nhất một ký tự xuống dòng. Điều này là để tạo điều kiện phát hiện các báo cáo không đầy đủ và đầy đủ trong mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
105

Cảnh báo

Có thể làm hỏng trình thông dịch Python với chuỗi đủ lớn/phức tạp khi biên dịch thành đối tượng AST do giới hạn độ sâu ngăn xếp trong trình biên dịch AST của Python

Đã thay đổi trong phiên bản 3. 2. Được phép sử dụng dòng mới của Windows và Mac. Ngoài ra, đầu vào ở chế độ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
680 không phải kết thúc bằng một dòng mới nữa. Đã thêm tham số tối ưu hóa.

Đã thay đổi trong phiên bản 3. 5. Trước đây,

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 đã xuất hiện khi gặp phải byte rỗng trong nguồn.

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

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
108 giờ đây có thể được chuyển vào cờ để kích hoạt hỗ trợ cho
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
109,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
110 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
111 cấp cao nhất.

lớp phức tạp[thực=0 , hình ảnh=0]lớp phức tạp[chuỗi]

Trả về một số phức với giá trị thực + hình ảnh*1j hoặc chuyển đổi một chuỗi hoặc số thành một số phức. Nếu tham số đầu tiên là một chuỗi, nó sẽ được hiểu là một số phức và hàm phải được gọi mà không có tham số thứ hai. Tham số thứ hai không bao giờ có thể là một chuỗi. Mỗi đối số có thể là bất kỳ loại số nào [kể cả phức tạp]. Nếu hình ảnh bị bỏ qua, nó sẽ mặc định bằng 0 và hàm tạo đóng vai trò chuyển đổi số như

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
113. Nếu cả hai đối số bị bỏ qua, trả về
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
114

Đối với một đối tượng Python chung

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
115,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
116 ủy quyền cho
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
117. Nếu
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
118 không được xác định thì nó sẽ quay trở lại
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
119. Nếu
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
119 không được xác định thì nó sẽ quay trở lại
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622

Ghi chú

Khi chuyển đổi từ một chuỗi, chuỗi không được chứa khoảng trắng xung quanh toán tử trung tâm

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
122 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
123. Ví dụ:
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
124 cũng được, nhưng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
125 tăng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
663

Kiểu phức hợp được mô tả trong Kiểu số — int, float, complex .

Đã thay đổi trong phiên bản 3. 6. Cho phép nhóm các chữ số có dấu gạch dưới như trong mã chữ.

Đã thay đổi trong phiên bản 3. 8. Trở về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622 nếu
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
118 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
119 không được xác định.

delattr[đối tượng , tên]

Đây là họ hàng của

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63. Các đối số là một đối tượng và một chuỗi. Chuỗi phải là tên của một trong các thuộc tính của đối tượng. Hàm xóa thuộc tính được đặt tên, miễn là đối tượng cho phép. Ví dụ,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
131 tương đương với
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
132. tên không cần phải là mã định danh Python [xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63]

class dict[**kwarg]lớp dict[ánh xạ , **kwarg]class dict[có thể lặp lại , **kwarg]

Tạo từ điển mới. Đối tượng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
134 là lớp từ điển. Xem
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
134 và Các loại ánh xạ — dict để biết tài liệu về lớp này.

Đối với các vùng chứa khác, hãy xem các lớp

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
136,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
137 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
138 tích hợp sẵn, cũng như mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
139

dir[]dir[đối tượng]

Không có đối số, trả về danh sách tên trong phạm vi cục bộ hiện tại. Với một đối số, cố gắng trả về danh sách các thuộc tính hợp lệ cho đối tượng đó

Nếu đối tượng có một phương thức tên là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
140, phương thức này sẽ được gọi và phải trả về danh sách các thuộc tính. Điều này cho phép các đối tượng triển khai hàm
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
141 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
142 tùy chỉnh để tùy chỉnh cách thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 báo cáo các thuộc tính của chúng

Nếu đối tượng không cung cấp

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
140, hàm sẽ cố gắng hết sức để thu thập thông tin từ thuộc tính
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
145 của đối tượng, nếu được xác định và từ đối tượng loại của nó. Danh sách kết quả không nhất thiết phải đầy đủ và có thể không chính xác khi đối tượng có một
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
141 tùy chỉnh

Cơ chế

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 mặc định hoạt động khác với các loại đối tượng khác nhau, vì nó cố gắng tạo ra thông tin phù hợp nhất, thay vì đầy đủ,

  • Nếu đối tượng là một đối tượng mô-đun, danh sách chứa tên của các thuộc tính của mô-đun

  • Nếu đối tượng là một đối tượng kiểu hoặc lớp, thì danh sách chứa tên của các thuộc tính của nó và đệ quy các thuộc tính của các cơ sở của nó

  • Mặt khác, danh sách chứa các tên thuộc tính của đối tượng, tên của các thuộc tính của lớp đối tượng và đệ quy các thuộc tính của các lớp cơ sở của lớp đối tượng.

Danh sách kết quả được sắp xếp theo thứ tự bảng chữ cái. Ví dụ

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
6

Ghi chú

Bởi vì

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 được cung cấp chủ yếu để thuận tiện cho việc sử dụng tại dấu nhắc tương tác, nên nó cố gắng cung cấp một bộ tên thú vị hơn là cố gắng cung cấp một bộ tên được xác định chặt chẽ hoặc nhất quán và hành vi chi tiết của nó có thể thay đổi qua các bản phát hành. Ví dụ: các thuộc tính siêu lớp không có trong danh sách kết quả khi đối số là một lớp

divmod[a , b]

Lấy hai số [không phức tạp] làm đối số và trả về một cặp số bao gồm thương và số dư của chúng khi sử dụng phép chia số nguyên. Với các loại toán hạng hỗn hợp, áp dụng các quy tắc cho toán tử số học nhị phân. Đối với số nguyên, kết quả giống như

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
149. Đối với số dấu phẩy động, kết quả là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
150, trong đó q thường là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
151 nhưng có thể nhỏ hơn 1. Trong mọi trường hợp,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
152 rất gần với a, nếu
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
153 khác 0 thì nó có cùng dấu với b, và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
154

liệt kê[có thể lặp lại , bắt đầu=0]

Trả về một đối tượng liệt kê. iterable phải là một trình tự, một iterator hoặc một số đối tượng khác hỗ trợ phép lặp. Phương thức

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
155 của trình vòng lặp được trả về bởi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64 trả về một bộ chứa số đếm [từ đầu được mặc định là 0] và các giá trị thu được từ việc lặp qua lặp lại.

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
6

Tương đương với

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
6

eval[biểu thức , / , toàn cầu=Không có , người dân địa phương=Không có]

Các đối số là một chuỗi và toàn cục và cục bộ tùy chọn. Nếu được cung cấp, toàn cầu phải là một từ điển. Nếu được cung cấp, người dân địa phương có thể là bất kỳ đối tượng ánh xạ nào

Đối số biểu thức được phân tích cú pháp và đánh giá dưới dạng một biểu thức Python [về mặt kỹ thuật, một danh sách điều kiện] bằng cách sử dụng từ điển toàn cầu và cục bộ dưới dạng không gian tên toàn cầu và cục bộ. Nếu có từ điển toàn cầu và không chứa giá trị cho khóa

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
157, tham chiếu đến từ điển của mô-đun tích hợp sẵn
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
158 được chèn vào bên dưới khóa đó trước khi biểu thức được phân tích cú pháp. Bằng cách đó, bạn có thể kiểm soát nội trang nào có sẵn cho mã được thực thi bằng cách chèn từ điển
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
157 của riêng bạn vào toàn cầu trước khi chuyển nó tới
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65. Nếu từ điển địa phương bị bỏ qua, nó sẽ mặc định là từ điển toàn cầu. Nếu cả hai từ điển đều bị bỏ qua, biểu thức được thực thi với toàn cầu và cục bộ trong môi trường nơi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 được gọi. Lưu ý, eval[] không có quyền truy cập vào phạm vi lồng nhau [không phải cục bộ] trong môi trường kèm theo.

Giá trị trả về là kết quả của biểu thức được đánh giá. Lỗi cú pháp được báo cáo là ngoại lệ. Thí dụ

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
6

Hàm này cũng có thể được sử dụng để thực thi các đối tượng mã tùy ý [chẳng hạn như các đối tượng được tạo bởi

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
8]. Trong trường hợp này, hãy chuyển một đối tượng mã thay vì một chuỗi. Nếu đối tượng mã đã được biên dịch với
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
680 làm đối số chế độ, giá trị trả về của
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 sẽ là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683

gợi ý. việc thực thi động các câu lệnh được hỗ trợ bởi hàm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66. Các hàm
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 lần lượt trả về từ điển cục bộ và toàn cầu hiện tại, có thể hữu ích khi chuyển qua để sử dụng bởi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 hoặc
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66

Nếu nguồn đã cho là một chuỗi, thì các dấu cách và tab ở đầu và cuối sẽ bị loại bỏ

Xem

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
171 để biết một hàm có thể đánh giá các chuỗi một cách an toàn bằng các biểu thức chỉ chứa các ký tự

Tăng sự kiện kiểm tra

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
172 với đối tượng mã làm đối số. Các sự kiện biên dịch mã cũng có thể được nâng lên.

exec[đối tượng , toàn cầu=Không có , người dân địa phương=Không có , / , * , đóng cửa=Không có]

Hàm này hỗ trợ thực thi động mã Python. đối tượng phải là một chuỗi hoặc một đối tượng mã. Nếu đó là một chuỗi, thì chuỗi đó được phân tích thành một tập hợp các câu lệnh Python, sau đó được thực thi [trừ khi xảy ra lỗi cú pháp]. 1 Nếu nó là một đối tượng mã, nó được thực thi đơn giản. Trong mọi trường hợp, mã được thực thi phải hợp lệ dưới dạng đầu vào tệp [xem phần Đầu vào tệp trong Hướng dẫn tham khảo]. Xin lưu ý rằng các câu lệnh

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
173,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
174 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
175 không được sử dụng bên ngoài các định nghĩa hàm ngay cả trong ngữ cảnh của mã được truyền cho hàm
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66. Giá trị trả về là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683.

Trong mọi trường hợp, nếu các phần tùy chọn bị bỏ qua, mã được thực thi trong phạm vi hiện tại. Nếu chỉ toàn cầu được cung cấp, nó phải là một từ điển [và không phải là một lớp con của từ điển], sẽ được sử dụng cho cả biến toàn cục và biến cục bộ. Nếu toàn cầu và cục bộ được cung cấp, chúng được sử dụng cho các biến toàn cầu và cục bộ tương ứng. Nếu được cung cấp, người dân địa phương có thể là bất kỳ đối tượng ánh xạ nào. Hãy nhớ rằng ở cấp độ mô-đun, toàn cầu và cục bộ là cùng một từ điển. Nếu exec lấy hai đối tượng riêng biệt là toàn cầu và cục bộ, mã sẽ được thực thi như thể nó được nhúng trong một định nghĩa lớp

Nếu từ điển toàn cục không chứa giá trị cho khóa

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
157, tham chiếu đến từ điển của mô-đun tích hợp sẵn
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
158 sẽ được chèn vào bên dưới khóa đó. Bằng cách đó, bạn có thể kiểm soát nội trang nào có sẵn cho mã được thực thi bằng cách chèn từ điển
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
157 của riêng bạn vào toàn cục trước khi chuyển nó tới
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66

Đối số đóng chỉ định một đóng – một bộ các ô. Nó chỉ hợp lệ khi đối tượng là một đối tượng mã có chứa các biến tự do. Độ dài của bộ dữ liệu phải khớp chính xác với số lượng biến miễn phí được tham chiếu bởi đối tượng mã

Tăng sự kiện kiểm tra

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
172 với đối tượng mã làm đối số. Các sự kiện biên dịch mã cũng có thể được nâng lên.

Ghi chú

Các hàm tích hợp sẵn

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 lần lượt trả về từ điển toàn cầu và cục bộ hiện tại, có thể hữu ích khi chuyển qua để sử dụng làm đối số thứ hai và thứ ba cho
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66

Ghi chú

Các địa phương mặc định hoạt động như được mô tả cho chức năng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 bên dưới. không nên sửa đổi từ điển địa phương mặc định. Vượt qua một từ điển địa phương rõ ràng nếu bạn cần xem tác động của mã đối với người dân địa phương sau khi hàm
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66 trả về

Đã thay đổi trong phiên bản 3. 11. Đã thêm tham số đóng cửa.

bộ lọc[chức năng , có thể lặp lại]

Xây dựng một iterator từ các phần tử iterable mà hàm trả về true. iterable có thể là một chuỗi, một vùng chứa hỗ trợ phép lặp hoặc một trình lặp. Nếu hàm là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683, thì hàm nhận dạng được giả định, nghĩa là tất cả các phần tử của iterable sai sẽ bị xóa

Lưu ý rằng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
189 tương đương với biểu thức trình tạo
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
190 nếu chức năng không phải là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
192 nếu chức năng là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683

Xem

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
194 để biết hàm bổ sung trả về các phần tử của iterable mà hàm trả về false

lớp float[x=0. 0]

Trả về một số dấu phẩy động được tạo từ một số hoặc chuỗi x

Nếu đối số là một chuỗi, thì đối số đó phải chứa số thập phân, tùy chọn đứng trước dấu và được nhúng tùy chọn trong khoảng trắng. Dấu hiệu tùy chọn có thể là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
195 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
196; . Đối số cũng có thể là một chuỗi đại diện cho một NaN [không phải là số] hoặc vô cực dương hoặc âm. Chính xác hơn, đầu vào phải tuân theo ngữ pháp sau sau khi các ký tự khoảng trắng ở đầu và cuối bị xóa

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
6

Ở đây

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
198 là dạng của một ký tự dấu phẩy động Python, được mô tả trong Chữ thực dấu phẩy động . Trường hợp không đáng kể, vì vậy, ví dụ: “inf”, “Inf”, “INFINITY” và “iNfINity” đều là cách viết chấp nhận được cho vô cực dương.

Mặt khác, nếu đối số là một số nguyên hoặc số dấu phẩy động, thì một số dấu phẩy động có cùng giá trị [trong phạm vi độ chính xác của dấu phẩy động của Python] sẽ được trả về. Nếu đối số nằm ngoài phạm vi float của Python, thì một

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
199 sẽ xuất hiện

Đối với một đối tượng Python chung

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
115,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
01 ủy quyền cho
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
02. Nếu
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
119 không được xác định thì nó sẽ quay trở lại
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622

Nếu không có đối số nào được đưa ra, thì trả về

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
05

ví dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
60

Kiểu float được mô tả trong Kiểu số — int, float, complex .

Đã thay đổi trong phiên bản 3. 6. Cho phép nhóm các chữ số có dấu gạch dưới như trong mã chữ.

Đã thay đổi trong phiên bản 3. 7. x hiện là tham số chỉ vị trí.

Đã thay đổi trong phiên bản 3. 8. Trở về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622 nếu không xác định được
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
119.

định dạng[giá trị , format_spec='']

Chuyển đổi giá trị thành biểu diễn “được định dạng”, như được kiểm soát bởi format_spec. Việc giải thích format_spec sẽ phụ thuộc vào loại đối số giá trị; . Ngôn ngữ nhỏ đặc tả định dạng .

Định dạng_spec mặc định là một chuỗi rỗng thường mang lại tác dụng tương tự như khi gọi _____008

Một cuộc gọi đến

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
09 được dịch sang
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
10 bỏ qua từ điển cá thể khi tìm kiếm phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
11 của giá trị. Một ngoại lệ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 được đưa ra nếu tìm kiếm phương thức đạt tới
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
13 và format_spec không trống hoặc nếu format_spec hoặc giá trị trả về không phải là chuỗi

Đã thay đổi trong phiên bản 3. 4. ______014 tăng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 nếu format_spec không phải là một chuỗi rỗng.

lớp đóng băng[có thể lặp lại=set[]]

Trả về một đối tượng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
16 mới, tùy chọn với các phần tử được lấy từ iterable.
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
16 là lớp dựng sẵn. Xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
16 và Loại thiết lập — set, freezeset để biết tài liệu về lớp này.

Đối với các vùng chứa khác, hãy xem các lớp

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
137,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
136,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
138 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
134 tích hợp sẵn, cũng như mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
139

getattr[đối tượng , tên]getattr[đối tượng , tên , mặc định]

Trả về giá trị của thuộc tính được đặt tên của đối tượng. tên phải là một chuỗi. Nếu chuỗi là tên của một trong các thuộc tính của đối tượng, thì kết quả là giá trị của thuộc tính đó. Ví dụ,

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
24 tương đương với
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
25. Nếu thuộc tính được đặt tên không tồn tại, giá trị mặc định sẽ được trả về nếu được cung cấp, nếu không thì
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
26 được nâng lên. tên không cần phải là mã định danh Python [xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63]

Ghi chú

việc xáo trộn tên riêng xảy ra vào thời điểm biên dịch, người ta phải xáo trộn tên của một thuộc tính riêng [các thuộc tính có hai dấu gạch dưới ở đầu] theo cách thủ công để .

toàn cầu[]

Trả về từ điển triển khai không gian tên mô-đun hiện tại. Đối với mã bên trong hàm, giá trị này được đặt khi hàm được xác định và giữ nguyên bất kể hàm được gọi ở đâu

hasattr[đối tượng , tên]

Các đối số là một đối tượng và một chuỗi. Kết quả là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu chuỗi là tên của một trong các thuộc tính của đối tượng,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614 nếu không. [Điều này được thực hiện bằng cách gọi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
31 và xem liệu nó có tăng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
26 hay không. ]

hàm băm[đối tượng]

Trả về giá trị băm của đối tượng [nếu có]. Giá trị băm là số nguyên. Chúng được sử dụng để so sánh nhanh các khóa từ điển trong quá trình tra cứu từ điển. Các giá trị số so sánh bằng nhau có cùng giá trị băm [ngay cả khi chúng thuộc các loại khác nhau, như trường hợp của 1 và 1. 0]

Ghi chú

Đối với các đối tượng có phương thức

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
33 tùy chỉnh, lưu ý rằng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
64 cắt bớt giá trị trả về dựa trên độ rộng bit của máy chủ. Xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
33 để biết chi tiết

trợ giúp[]trợ giúp[yêu cầu]

Gọi hệ thống trợ giúp tích hợp. [Chức năng này dành cho sử dụng tương tác. ] Nếu không có đối số nào được đưa ra, hệ thống trợ giúp tương tác sẽ bắt đầu trên bảng điều khiển phiên dịch. Nếu đối số là một chuỗi, thì chuỗi đó được tra cứu dưới dạng tên của mô-đun, hàm, lớp, phương thức, từ khóa hoặc chủ đề tài liệu và trang trợ giúp được in trên bảng điều khiển. Nếu đối số là bất kỳ loại đối tượng nào khác, một trang trợ giúp về đối tượng sẽ được tạo

Lưu ý rằng nếu dấu gạch chéo [/] xuất hiện trong danh sách tham số của hàm khi gọi

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65, điều đó có nghĩa là các tham số trước dấu gạch chéo chỉ là vị trí. Để biết thêm thông tin, hãy xem mục Câu hỏi thường gặp về thông số chỉ vị trí .

Chức năng này được thêm vào không gian tên tích hợp bởi mô-đun

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
37

Đã thay đổi trong phiên bản 3. 4. Các thay đổi đối với

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
38 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
39 có nghĩa là các chữ ký được báo cáo cho các vật phẩm có thể gọi được hiện toàn diện và nhất quán hơn.

hex[x]

Chuyển đổi một số nguyên thành chuỗi thập lục phân chữ thường có tiền tố là “0x”. Nếu x không phải là một đối tượng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 của Python, thì nó phải xác định một phương thức
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622 trả về một số nguyên. Vài ví dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
61

Nếu bạn muốn chuyển đổi một số nguyên sang một chuỗi thập lục phân hoa hoặc thường có tiền tố hoặc không, bạn có thể sử dụng một trong hai cách sau

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
62

Xem thêm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 để biết thêm thông tin

Xem thêm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 để chuyển đổi chuỗi thập lục phân thành số nguyên bằng cơ số 16

Ghi chú

Để có được biểu diễn chuỗi thập lục phân cho số float, hãy sử dụng phương thức

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
44

id[đối tượng]

Trả về “danh tính” của một đối tượng. Đây là một số nguyên được đảm bảo là duy nhất và không đổi cho đối tượng này trong suốt thời gian tồn tại của nó. Hai đối tượng có thời gian sống không chồng chéo có thể có cùng giá trị

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67

Chi tiết triển khai CPython. Đây là địa chỉ của đối tượng trong bộ nhớ

Tăng sự kiện kiểm tra

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
46 với đối số
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
47.

đầu vào[]đầu vào[nhắc]

Nếu có đối số dấu nhắc, nó sẽ được ghi vào đầu ra tiêu chuẩn mà không có dòng mới ở cuối. Sau đó, hàm đọc một dòng từ đầu vào, chuyển đổi nó thành một chuỗi [bỏ một dòng mới ở cuối] và trả về dòng đó. Khi EOF được đọc,

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
48 được nâng lên. Thí dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
63

Nếu mô-đun

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
49 đã được tải, thì
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68 sẽ sử dụng nó để cung cấp các tính năng lịch sử và chỉnh sửa dòng phức tạp

Tăng sự kiện kiểm tra

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
51 với đối số
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
52 trước khi đọc đầu vào

Tăng sự kiện kiểm tra

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
53 với kết quả sau khi đọc thành công đầu vào.

class int[x=0]lớp int[x , cơ sở=10]

Trả về một đối tượng số nguyên được tạo từ một số hoặc chuỗi x hoặc trả về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
692 nếu không có đối số nào được đưa ra. Nếu x xác định
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
55,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
56 trả về
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
57. Nếu x định nghĩa
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622, nó trả về
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
59. Nếu x định nghĩa
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60, nó trả về
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61. Đối với các số dấu phẩy động, số này cắt ngắn về 0

Nếu x không phải là một số hoặc nếu cơ số được đưa ra, thì x phải là một chuỗi, thể hiện của

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
645 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
644 đại diện cho một số nguyên in radix base. Optionally, the literal can be preceded by
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
122 or
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
123 [with no space in between] and surrounded by whitespace. A base-n literal consists of the digits 0 to n-1, with
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66 to
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67 [or
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68 to
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69] having values 10 to 35. The default base is 10. The allowed values are 0 and 2–36. Base-2, -8, and -16 literals can be optionally prefixed with
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
70/
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
71,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
72/
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
73, or
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
74/
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
75, as with integer literals in code. Base 0 means to interpret exactly as a code literal, so that the actual base is 2, 8, 10, or 16, and so that
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
76 is not legal, while
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
77 is, as well as
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
78.

Kiểu số nguyên được mô tả trong Kiểu số — int, float, complex .

Đã thay đổi trong phiên bản 3. 4. Nếu cơ sở không phải là một thể hiện của

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 và đối tượng cơ sở có một phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
80, thì phương thức đó được gọi để lấy một số nguyên cho cơ sở. Các phiên bản trước sử dụng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
81 thay vì
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
80.

Đã thay đổi trong phiên bản 3. 6. Cho phép nhóm các chữ số có dấu gạch dưới như trong mã chữ.

Đã thay đổi trong phiên bản 3. 7. x hiện là tham số chỉ vị trí.

Đã thay đổi trong phiên bản 3. 8. Trở về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622 nếu không xác định được
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
55.

Đã thay đổi trong phiên bản 3. 11. Việc ủy ​​quyền cho

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60 không được chấp nhận.

Đã thay đổi trong phiên bản 3. 11. ______6621 đầu vào chuỗi và biểu diễn chuỗi có thể được giới hạn để giúp tránh các cuộc tấn công từ chối dịch vụ. Một

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
663 được nâng lên khi vượt quá giới hạn trong khi chuyển đổi một chuỗi x thành một
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 hoặc khi chuyển đổi một
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 thành một chuỗi sẽ vượt quá giới hạn. Xem tài liệu giới hạn độ dài chuyển đổi chuỗi số nguyên .

isinstance[đối tượng , thông tin lớp học]

Trả về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu đối số đối tượng là một thể hiện của đối số classinfo hoặc của một lớp con [trực tiếp, gián tiếp hoặc ảo ] của nó. Nếu đối tượng không phải là đối tượng của loại đã cho, hàm luôn trả về
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614. Nếu classinfo là một bộ gồm các đối tượng loại [hoặc theo cách đệ quy, các bộ khác như vậy] hoặc một Loại liên kết gồm nhiều loại, hãy trả về
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu đối tượng là một thể hiện của . Nếu classinfo không phải là một loại hoặc bộ dữ liệu của các loại và các bộ dữ liệu như vậy, một ngoại lệ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 sẽ được đưa ra.
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 có thể không được nâng lên đối với loại không hợp lệ nếu lần kiểm tra trước đó thành công.

Đã thay đổi trong phiên bản 3. 10. classinfo có thể là một Loại Liên minh .

issubclass[lớp , thông tin lớp học]

Trả về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu lớp là lớp con [trực tiếp, gián tiếp hoặc ảo ] của classinfo. Một lớp được coi là một lớp con của chính nó. classinfo có thể là một bộ gồm các đối tượng của lớp [hoặc theo cách đệ quy, các bộ khác như vậy] hoặc một Loại liên kết , trong trường hợp này trả về
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 nếu lớp là một lớp con của . Trong bất kỳ trường hợp nào khác, một ngoại lệ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 được đưa ra.

Đã thay đổi trong phiên bản 3. 10. classinfo có thể là một Loại Liên minh .

iter[đối tượng]iter[đối tượng , trọng điểm]

Trả về một đối tượng iterator . Đối số đầu tiên được diễn giải rất khác nhau tùy thuộc vào sự hiện diện của đối số thứ hai. Không có đối số thứ hai, đối tượng phải là một đối tượng tập hợp hỗ trợ giao thức có thể lặp lại [phương thức

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
98] hoặc nó phải hỗ trợ giao thức trình tự [phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
99 . Nếu nó không hỗ trợ một trong hai giao thức đó, thì
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 sẽ được nâng lên. Nếu đối số thứ hai, sentinel, được đưa ra, thì đối tượng phải là đối tượng có thể gọi được. Trình vòng lặp được tạo trong trường hợp này sẽ gọi đối tượng không có đối số cho mỗi lệnh gọi đến phương thức
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
155 của nó; .

Xem thêm Các loại trình lặp .

Một ứng dụng hữu ích của dạng thứ hai của

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 là xây dựng trình đọc khối. Ví dụ: đọc các khối có chiều rộng cố định từ tệp cơ sở dữ liệu nhị phân cho đến khi đạt đến cuối tệp

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
64

len[s]

Trả về chiều dài [số lượng mục] của một đối tượng. Đối số có thể là một chuỗi [chẳng hạn như chuỗi, byte, bộ, danh sách hoặc phạm vi] hoặc bộ sưu tập [chẳng hạn như từ điển, tập hợp hoặc tập hợp cố định]

Chi tiết triển khai CPython.

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
05 tăng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
199 trên chiều dài lớn hơn
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
07, chẳng hạn như
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
08

lớp danh sáchlớp danh sách[có thể lặp lại]

Thay vì là một hàm,

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
136 thực sự là một loại trình tự có thể thay đổi, như được ghi lại trong Danh sáchSequence Types — list, tuple, range.

người dân địa phương[]

Cập nhật và trả về một từ điển đại diện cho bảng ký hiệu cục bộ hiện tại. Các biến miễn phí được trả về bởi

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 khi nó được gọi trong các khối chức năng, nhưng không phải trong các khối lớp. Lưu ý rằng ở cấp độ mô-đun,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
62 là cùng một từ điển

Ghi chú

Nội dung của từ điển này không nên được sửa đổi;

map[chức năng , có thể lặp lại , *có thể lặp lại]

Trả về một trình vòng lặp áp dụng hàm cho mọi mục có thể lặp lại, mang lại kết quả. Nếu các đối số lặp bổ sung được truyền, hàm phải nhận nhiều đối số đó và được áp dụng song song cho các mục từ tất cả các lần lặp. Với nhiều lần lặp, trình lặp dừng khi hết lần lặp ngắn nhất. Đối với các trường hợp đầu vào hàm đã được sắp xếp thành các bộ đối số, hãy xem

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
13

tối đa[có thể lặp lại , * , key=Không có]tối đa[có thể lặp lại , * , mặc định , key=Không có]max[arg1 , arg2 , *args , key=Không có]

Trả về mục lớn nhất trong một lần lặp hoặc mục lớn nhất trong hai hoặc nhiều đối số

Nếu một đối số vị trí được cung cấp, thì đó phải là một có thể lặp lại . Mục lớn nhất trong iterable được trả về. Nếu hai hoặc nhiều đối số vị trí được cung cấp, đối số vị trí lớn nhất được trả về.

Có hai đối số chỉ từ khóa tùy chọn. Đối số key chỉ định hàm sắp xếp một đối số như được sử dụng cho

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
14. Đối số mặc định chỉ định một đối tượng sẽ trả về nếu iterable được cung cấp trống. Nếu iterable trống và mặc định không được cung cấp, thì một
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
663 sẽ xuất hiện

Nếu nhiều mục là tối đa, hàm trả về mục đầu tiên gặp phải. Điều này phù hợp với các công cụ bảo quản tính ổn định sắp xếp khác như

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
16 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
17

Mới trong phiên bản 3. 4. Đối số chỉ từ khóa mặc định.

Đã thay đổi trong phiên bản 3. 8. Khóa có thể là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683.

lớp chế độ xem bộ nhớ[đối tượng]

Trả về đối tượng “chế độ xem bộ nhớ” được tạo từ đối số đã cho. Xem Chế độ xem bộ nhớ để biết thêm thông tin.

phút[có thể lặp lại , * , key=Không]phút[có thể lặp lại , * , mặc định , phím=Không]min[arg1 , arg2 , *args , key=Không có]

Trả về mục nhỏ nhất trong một lần lặp hoặc mục nhỏ nhất trong hai hoặc nhiều đối số

Nếu một đối số vị trí được cung cấp, thì đó phải là một có thể lặp lại . Mục nhỏ nhất trong iterable được trả về. Nếu hai hoặc nhiều đối số vị trí được cung cấp, đối số vị trí nhỏ nhất được trả về.

Có hai đối số chỉ từ khóa tùy chọn. Đối số key chỉ định hàm sắp xếp một đối số như được sử dụng cho

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
14. Đối số mặc định chỉ định một đối tượng sẽ trả về nếu iterable được cung cấp trống. Nếu iterable trống và mặc định không được cung cấp, thì một
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
663 sẽ xuất hiện

Nếu nhiều mục là tối thiểu, hàm trả về mục đầu tiên gặp phải. Điều này phù hợp với các công cụ bảo quản tính ổn định sắp xếp khác như

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
21 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
22

Mới trong phiên bản 3. 4. Đối số chỉ từ khóa mặc định.

Đã thay đổi trong phiên bản 3. 8. Khóa có thể là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683.

next[trình lặp]tiếp theo[trình lặp , mặc định]

Truy xuất mục tiếp theo từ trình lặp bằng cách gọi phương thức

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
155 của nó. Nếu giá trị mặc định được đưa ra, nó sẽ được trả về nếu bộ vòng lặp đã cạn kiệt, nếu không thì
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
03 được nâng lên.

lớp đối tượng

Trả lại một đối tượng đặc biệt mới.

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
13 là cơ sở cho tất cả các lớp. Nó có các phương thức phổ biến cho tất cả các phiên bản của các lớp Python. Chức năng này không chấp nhận bất kỳ đối số

Ghi chú

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
13 không có
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
145, vì vậy bạn không thể gán các thuộc tính tùy ý cho một thể hiện của lớp
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
13

oct[x]

Chuyển đổi một số nguyên thành một chuỗi bát phân có tiền tố là “0o”. Kết quả là một biểu thức Python hợp lệ. Nếu x không phải là một đối tượng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 của Python, thì nó phải xác định một phương thức
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
622 trả về một số nguyên. Ví dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
65

Nếu bạn muốn chuyển đổi một số nguyên thành một chuỗi bát phân có tiền tố “0o” hoặc không, bạn có thể sử dụng một trong hai cách sau

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
66

Xem thêm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 để biết thêm thông tin

mở[tệp , chế độ='r' , đệm=- 1 , mã hóa=Không có , lỗi=Không có , dòng mới=Không có , closefd=Đúng , người mở=Không có]

Mở tệp và trả về đối tượng tệp tương ứng . Nếu tệp không thể mở được, một

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
33 sẽ xuất hiện. Xem Đọc và ghi tệp để biết thêm ví dụ về cách sử dụng chức năng này.

tệp là một đối tượng dạng đường dẫn cung cấp tên đường dẫn [tuyệt đối hoặc liên quan đến thư mục làm việc hiện tại] của tệp sẽ được mở hoặc . [Nếu một bộ mô tả tệp được cung cấp, nó sẽ bị đóng khi đối tượng I/O được trả về bị đóng trừ khi closefd được đặt thành

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614. ]

chế độ là một chuỗi tùy chọn chỉ định chế độ mở tệp. Nó mặc định là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
35 có nghĩa là mở để đọc ở chế độ văn bản. Các giá trị phổ biến khác là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
36 để ghi [cắt bớt tệp nếu nó đã tồn tại],
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
37 để tạo độc quyền và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
659 để nối thêm [trên một số hệ thống Unix, có nghĩa là tất cả các thao tác ghi sẽ nối vào cuối tệp bất kể vị trí tìm kiếm hiện tại . Ở chế độ văn bản, nếu mã hóa không được chỉ định thì mã hóa được sử dụng phụ thuộc vào nền tảng.
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
39 được gọi để lấy mã hóa miền địa phương hiện tại. [Để đọc và ghi byte thô, hãy sử dụng chế độ nhị phân và để mã hóa không xác định. ] Các chế độ khả dụng là

Tính cách

Nghĩa

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
35

mở để đọc [mặc định]

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
36

mở để viết, cắt bớt tệp trước

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
37

mở để tạo độc quyền, không thành công nếu tệp đã tồn tại

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
659

mở để viết, thêm vào cuối tệp nếu nó tồn tại

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
44

chế độ nhị phân

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
45

chế độ văn bản [mặc định]

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
195

mở để cập nhật [đọc và viết]

Chế độ mặc định là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
35 [mở để đọc văn bản, một từ đồng nghĩa của
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
48]. Chế độ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
49 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
50 mở và cắt bớt tệp. Chế độ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
51 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
52 mở tệp mà không cắt bớt

Như đã đề cập trong Tổng quan , Python phân biệt giữa I/O nhị phân và văn bản. Các tệp được mở ở chế độ nhị phân [bao gồm cả

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
44 trong đối số chế độ] trả về nội dung dưới dạng đối tượng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
645 mà không cần giải mã. Ở chế độ văn bản [mặc định hoặc khi
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
45 được bao gồm trong đối số chế độ], nội dung của tệp được trả về dưới dạng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
56, các byte đã được giải mã lần đầu bằng mã hóa phụ thuộc vào nền tảng hoặc sử dụng mã hóa được chỉ định nếu được cung cấp.

Ghi chú

Python không phụ thuộc vào khái niệm tệp văn bản của hệ điều hành cơ bản;

đệm là một số nguyên tùy chọn được sử dụng để đặt chính sách đệm. Vượt qua 0 để tắt bộ đệm [chỉ được phép ở chế độ nhị phân], 1 để chọn bộ đệm dòng [chỉ có thể sử dụng ở chế độ văn bản] và một số nguyên > 1 để biểu thị kích thước tính bằng byte của bộ đệm khối có kích thước cố định. Lưu ý rằng việc chỉ định kích thước bộ đệm theo cách này áp dụng cho I/O được đệm nhị phân, nhưng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
57 [i. e. , các tệp được mở bằng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
58] sẽ có một bộ đệm khác. Để vô hiệu hóa bộ đệm trong
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
57, hãy cân nhắc sử dụng cờ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
60 cho
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
61. Khi không đưa ra đối số đệm, chính sách đệm mặc định hoạt động như sau

  • Các tệp nhị phân được đệm trong các khối có kích thước cố định; . Trên nhiều hệ thống, bộ đệm thường dài 4096 hoặc 8192 byte

  • Tệp văn bản “tương tác” [tệp mà

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    63 trả về
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    609] sử dụng bộ đệm dòng. Các tệp văn bản khác sử dụng chính sách được mô tả ở trên cho các tệp nhị phân

encoding là tên của mã hóa được sử dụng để giải mã hoặc mã hóa tệp. Điều này chỉ nên được sử dụng trong chế độ văn bản. Mã hóa mặc định phụ thuộc vào nền tảng [bất kỳ giá trị nào mà

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
39 trả về], nhưng bất kỳ mã hóa văn bản nào được Python hỗ trợ đều có thể được sử dụng. Xem mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
66 để biết danh sách mã hóa được hỗ trợ.

lỗi là một chuỗi tùy chọn chỉ định cách xử lý lỗi mã hóa và giải mã—không thể sử dụng chuỗi này trong chế độ nhị phân. Có sẵn nhiều trình xử lý lỗi tiêu chuẩn [được liệt kê trong Trình xử lý lỗi ], mặc dù bất kỳ tên xử lý lỗi nào đã được đăng ký với

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
67 cũng hợp lệ. Tên tiêu chuẩn bao gồm.

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    68 để đưa ra một ngoại lệ
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    663 nếu có lỗi mã hóa. Giá trị mặc định của
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    683 có tác dụng tương tự

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    71 bỏ qua lỗi. Lưu ý rằng bỏ qua lỗi mã hóa có thể dẫn đến mất dữ liệu

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    72 khiến một điểm đánh dấu thay thế [chẳng hạn như
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    73] được chèn vào nơi có dữ liệu không đúng định dạng

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    74 sẽ đại diện cho bất kỳ byte không chính xác nào dưới dạng đơn vị mã thay thế thấp, từ U+DC80 đến U+DCFF. Các đơn vị mã thay thế này sau đó sẽ được chuyển trở lại thành các byte giống nhau khi trình xử lý lỗi
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    75 được sử dụng khi ghi dữ liệu. Điều này hữu ích để xử lý các tệp ở dạng mã hóa không xác định

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    76 chỉ được hỗ trợ khi ghi vào tệp. Các ký tự không được mã hóa hỗ trợ được thay thế bằng tham chiếu ký tự XML thích hợp
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    77

  • ________ 678 thay thế dữ liệu không đúng định dạng bằng chuỗi thoát dấu gạch chéo ngược Python

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    79 [cũng chỉ được hỗ trợ khi viết] thay thế các ký tự không được hỗ trợ bằng chuỗi thoát
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    80

dòng mới xác định cách phân tích các ký tự dòng mới từ luồng. Nó có thể là ________ 6683, ________ 682, ________ 683, _______ 684 và

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
85. Nó hoạt động như sau

  • Khi đọc đầu vào từ luồng, nếu dòng mới là

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    683, chế độ dòng mới chung được bật. Các dòng trong đầu vào có thể kết thúc bằng
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    83,
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    84 hoặc
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    85 và những dòng này được dịch thành
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    83 trước khi được trả lại cho người gọi. Nếu là
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    82, chế độ dòng mới chung được bật, nhưng kết thúc dòng được trả lại cho trình gọi chưa được dịch. Nếu nó có bất kỳ giá trị pháp lý nào khác, các dòng đầu vào chỉ được kết thúc bởi chuỗi đã cho và kết thúc dòng được trả về cho người gọi chưa được dịch

  • Khi ghi đầu ra vào luồng, nếu dòng mới là

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    683, mọi ký tự
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    83 được ghi sẽ được dịch sang dấu phân cách dòng mặc định của hệ thống,
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    94. Nếu dòng mới là
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    82 hoặc
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    83, không có bản dịch nào diễn ra. Nếu dòng mới là bất kỳ giá trị pháp lý nào khác, bất kỳ ký tự
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    83 nào được viết sẽ được dịch sang chuỗi đã cho

Nếu closefd là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
614 và một bộ mô tả tệp thay vì tên tệp đã được cung cấp, bộ mô tả tệp cơ bản sẽ được giữ mở khi đóng tệp. Nếu tên tệp được cung cấp closefd phải là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609 [mặc định];

Có thể sử dụng công cụ mở tùy chỉnh bằng cách chuyển một công cụ mở có thể gọi được. Bộ mô tả tệp cơ bản cho đối tượng tệp sau đó được lấy bằng cách gọi trình mở với [tệp, cờ]. trình mở phải trả về một bộ mô tả tệp đang mở [chuyển

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
600 vì trình mở dẫn đến chức năng tương tự như chuyển
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683]

Tệp mới tạo không thể kế thừa .

Ví dụ sau sử dụng tham số dir_fd của hàm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
602 để mở một tệp liên quan đến một thư mục nhất định.

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
67

Loại đối tượng tệp được trả về bởi hàm

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63 tùy thuộc vào chế độ. Khi
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63 được sử dụng để mở tệp ở chế độ văn bản [_______ 636, _______ 635, _______ 1607, _______ 648, v.v. ], nó trả về một lớp con của
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
609 [cụ thể là
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
610]. Khi được sử dụng để mở tệp ở chế độ nhị phân có đệm, lớp được trả về là lớp con của
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
611. Lớp chính xác khác nhau. ở chế độ đọc nhị phân, nó trả về một
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
612; . Khi bộ đệm bị tắt, luồng thô, một lớp con của
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
615,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
616, được trả về.

Xem thêm các mô-đun xử lý tệp, chẳng hạn như ________ 1617, ________ 1618 [trong đó

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
63 được khai báo],
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
620,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
621,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
622 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
623

Tăng sự kiện kiểm tra

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
624 với các đối số
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
625,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
626,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
627.

Các đối số

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
626 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
627 có thể đã được sửa đổi hoặc suy ra từ cuộc gọi ban đầu

Thay đổi trong phiên bản 3. 3

  • Tham số mở đã được thêm vào

  • Chế độ

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    37 đã được thêm vào

  • >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    631 đã từng được nuôi dưỡng, bây giờ nó là bí danh của
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    33

  • >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    633 hiện được nâng lên nếu tệp được mở ở chế độ tạo độc quyền [
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    37] đã tồn tại

Thay đổi trong phiên bản 3. 4

  • Tệp hiện không thể kế thừa

Thay đổi trong phiên bản 3. 5

  • Nếu cuộc gọi hệ thống bị gián đoạn và trình xử lý tín hiệu không đưa ra ngoại lệ, thì chức năng này sẽ thử lại cuộc gọi hệ thống thay vì đưa ra ngoại lệ

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    635 [xem PEP 475 để biết lý do]

  • Trình xử lý lỗi

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    79 đã được thêm vào

Thay đổi trong phiên bản 3. 6

  • Đã thêm hỗ trợ để chấp nhận các đối tượng triển khai

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    637

  • Trên Windows, mở bộ đệm bảng điều khiển có thể trả về một lớp con của

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    615 khác với
    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    616

Đã thay đổi trong phiên bản 3. 11. Chế độ

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
640 đã bị xóa.

ord[c]

Đưa ra một chuỗi đại diện cho một ký tự Unicode, trả về một số nguyên đại diện cho điểm mã Unicode của ký tự đó. Ví dụ:

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
641 trả về số nguyên
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
642 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
643 [ký hiệu Euro] trả về
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
644. Đây là nghịch đảo của
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
6

pow[base , exp , mod=Không có]

Trả lại cơ sở cho điểm kinh nghiệm sức mạnh; . Dạng hai đối số

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
647 tương đương với việc sử dụng toán tử lũy thừa.
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
648

Các đối số phải có kiểu số. Với các loại toán hạng hỗn hợp, các quy tắc cưỡng chế cho các toán tử số học nhị phân được áp dụng. Đối với toán hạng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621, kết quả có cùng kiểu với toán hạng [sau khi ép buộc] trừ khi đối số thứ hai là âm; . Ví dụ,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
650 trả về
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
651, nhưng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
652 trả về
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
653. Đối với cơ số âm của loại
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
113 và số mũ không nguyên, một kết quả phức tạp được đưa ra. Ví dụ,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
656 trả về một giá trị gần với
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
657

Đối với cơ sở toán hạng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621 và exp, nếu có mod, mod cũng phải là kiểu số nguyên và mod phải khác không. Nếu có mod và exp âm, cơ sở phải tương đối nguyên tố với mod. Trong trường hợp đó,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
659 được trả về, trong đó inv_base là nghịch đảo của mod modulo cơ sở

Đây là một ví dụ về tính toán nghịch đảo cho

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
660 modulo
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
642

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
68

Đã thay đổi trong phiên bản 3. 8. Đối với toán hạng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
621, dạng ba đối số của
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
663 hiện cho phép đối số thứ hai là số âm, cho phép tính toán nghịch đảo mô-đun.

Đã thay đổi trong phiên bản 3. 8. Cho phép đối số từ khóa. Trước đây, chỉ các đối số vị trí được hỗ trợ.

in[*đối tượng , sep=' ' , kết thúc='\n' , tệp=Không có , flush=Sai]

In các đối tượng vào tệp luồng văn bản, được phân tách bằng sep và theo sau là end. sep, end, file và flush, nếu có, phải được cung cấp dưới dạng đối số từ khóa

Tất cả các đối số không phải từ khóa được chuyển đổi thành các chuỗi như

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67 và được ghi vào luồng, được phân tách bằng sep và theo sau là kết thúc. Cả sep và end đều phải là chuỗi; . Nếu không có đối tượng nào được đưa ra,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66 sẽ chỉ viết kết thúc

Đối số tệp phải là một đối tượng có phương thức

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
667; . Vì các đối số in được chuyển thành chuỗi văn bản, nên không thể sử dụng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
66 với các đối tượng tệp chế độ nhị phân. Đối với những thứ này, hãy sử dụng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
671 thay thế

Việc đầu ra có được lưu vào bộ đệm hay không thường được xác định bởi tệp, nhưng nếu đối số từ khóa tuôn ra là đúng, thì luồng bị buộc phải xóa

Đã thay đổi trong phiên bản 3. 3. Đã thêm đối số từ khóa flush.

lớp thuộc tính[fget=Không , fset=Không , fdel=Không , doc=Không có]

Trả về thuộc tính thuộc tính

fget là một chức năng để nhận một giá trị thuộc tính. fset là một chức năng để thiết lập một giá trị thuộc tính. fdel là một chức năng để xóa một giá trị thuộc tính. Và doc tạo một chuỗi tài liệu cho thuộc tính

Cách sử dụng điển hình là xác định thuộc tính được quản lý

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
115

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
69

Nếu c là một thể hiện của C, thì

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
673 sẽ gọi getter,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
674 sẽ gọi setter và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
675 là deleter

Nếu được cung cấp, doc sẽ là chuỗi tài liệu của thuộc tính thuộc tính. Nếu không, thuộc tính sẽ sao chép chuỗi tài liệu của fget [nếu nó tồn tại]. Điều này cho phép dễ dàng tạo các thuộc tính chỉ đọc bằng cách sử dụng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67 làm trang trí .

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
10

Trình trang trí

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
677 biến phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
678 thành một "getter" cho thuộc tính chỉ đọc có cùng tên và nó đặt chuỗi tài liệu cho điện áp thành "Lấy điện áp hiện tại. ”

Một đối tượng thuộc tính có các phương thức

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
679,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
680 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
681 có thể sử dụng làm trình trang trí để tạo một bản sao của thuộc tính với hàm truy cập tương ứng được đặt thành hàm được trang trí. Điều này được giải thích tốt nhất với một ví dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
11

Mã này hoàn toàn tương đương với ví dụ đầu tiên. Đảm bảo cung cấp cho các chức năng bổ sung cùng tên với thuộc tính ban đầu [

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
115 trong trường hợp này. ]

Đối tượng thuộc tính được trả về cũng có các thuộc tính

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
683,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
684 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
685 tương ứng với các đối số hàm tạo

Đã thay đổi trong phiên bản 3. 5. Các chuỗi tài liệu của các đối tượng thuộc tính hiện có thể ghi được.

lớp phạm vi[dừng]lớp phạm vi[bắt đầu , dừng , bước=1]

Thay vì là một hàm,

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
686 thực sự là một loại trình tự bất biến, như được ghi lại trong Phạm viSequence Types — list, tuple, range.

repr[đối tượng]

Trả về một chuỗi chứa một đại diện có thể in được của một đối tượng. Đối với nhiều loại, hàm này cố gắng trả về một chuỗi sẽ tạo ra một đối tượng có cùng giá trị khi được chuyển đến

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65; . Một lớp có thể kiểm soát những gì hàm này trả về cho các phiên bản của nó bằng cách xác định phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
688. Nếu không truy cập được
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
689, chức năng này sẽ tăng
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
641

đảo ngược[seq]

Trả về một trình lặp ngược . seq phải là một đối tượng có phương thức

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
691 hoặc hỗ trợ giao thức trình tự [phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
692 và phương thức
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
99 với các đối số nguyên bắt đầu từ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
692].

vòng[số , nchữ số=Không có]

Trả về số được làm tròn chính xác đến n chữ số sau dấu thập phân. Nếu ndigits bị bỏ qua hoặc là

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683, nó sẽ trả về số nguyên gần nhất với đầu vào của nó

Đối với các loại tích hợp hỗ trợ

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61, các giá trị được làm tròn thành bội số gần nhất của 10 thành lũy thừa trừ n chữ số; . Mọi giá trị số nguyên đều hợp lệ cho n chữ số [dương, 0 hoặc âm]. Giá trị trả về là một số nguyên nếu ndigits bị bỏ qua hoặc
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683. Mặt khác, giá trị trả về có cùng loại với số

Đối với một đối tượng Python chung

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
603,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
604 ủy quyền cho
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
605

Ghi chú

Hành vi của

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61 đối với số float có thể gây ngạc nhiên. ví dụ:
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
607 cho
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
608 thay vì dự kiến ​​là
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
609. Đây không phải là một lỗi. đó là kết quả của thực tế là hầu hết các phân số thập phân không thể được biểu diễn chính xác dưới dạng số float. Xem Số học dấu chấm động. Các vấn đề và hạn chế để biết thêm thông tin.

lớp đặtlớp đặt[có thể lặp lại]

Trả về một đối tượng

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
137 mới, tùy chọn với các phần tử được lấy từ iterable.
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
137 là một lớp tích hợp. Xem
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
137 và Các loại thiết lập — set, freezeset để biết tài liệu về lớp này.

Đối với các vùng chứa khác, hãy xem các lớp

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
16,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
136,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
138 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
134 tích hợp, cũng như mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
139

setattr[đối tượng , tên , giá trị]

Đây là đối tác của

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61. Các đối số là một đối tượng, một chuỗi và một giá trị tùy ý. Chuỗi có thể đặt tên cho một thuộc tính hiện có hoặc một thuộc tính mới. Hàm gán giá trị cho thuộc tính, miễn là đối tượng cho phép. Ví dụ,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
619 tương đương với
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
620

tên không cần phải là số nhận dạng Python như được định nghĩa trong Số nhận dạng và từ khóa trừ khi đối tượng chọn thực thi điều đó, chẳng hạn như trong một

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
142 tùy chỉnh . Một thuộc tính có tên không phải là mã định danh sẽ không thể truy cập được bằng cách sử dụng ký hiệu dấu chấm, nhưng có thể truy cập được thông qua
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61, v.v.

Ghi chú

việc xáo trộn tên riêng xảy ra tại thời điểm biên dịch, người ta phải xáo trộn tên của một thuộc tính riêng [các thuộc tính có hai dấu gạch dưới ở đầu] theo cách thủ công để .

lớp lát[dừng]lớp lát[bắt đầu , dừng , bước=1]

Trả về một slice đối tượng đại diện cho tập hợp các chỉ số được chỉ định bởi

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
625. Đối số bắt đầu và bước mặc định là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683. Các đối tượng lát cắt có các thuộc tính dữ liệu chỉ đọc
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
627,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
628 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
629 chỉ trả về các giá trị đối số [hoặc giá trị mặc định của chúng]. Chúng không có chức năng rõ ràng nào khác; . Các đối tượng lát cũng được tạo khi sử dụng cú pháp lập chỉ mục mở rộng. Ví dụ.
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
630 hoặc
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
631. Xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
632 để biết phiên bản thay thế trả về trình vòng lặp.

đã sắp xếp[có thể lặp lại , / , * , phím=Không , đảo ngược=Sai]

Trả về một danh sách được sắp xếp mới từ các mục trong iterable

Có hai đối số tùy chọn phải được chỉ định làm đối số từ khóa

key chỉ định chức năng của một đối số được sử dụng để trích xuất khóa so sánh từ mỗi phần tử trong iterable [ví dụ:

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
633]. Giá trị mặc định là
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
683 [so sánh trực tiếp các phần tử]

đảo ngược là một giá trị boolean. Nếu được đặt thành

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
609, thì các thành phần danh sách được sắp xếp như thể mỗi phép so sánh được đảo ngược

Sử dụng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
636 để chuyển đổi chức năng cmp kiểu cũ thành chức năng chính

Chức năng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
65 tích hợp được đảm bảo ổn định. Một sắp xếp ổn định nếu nó đảm bảo không thay đổi thứ tự tương đối của các phần tử được so sánh bằng nhau — điều này hữu ích cho việc sắp xếp theo nhiều lần [ví dụ: sắp xếp theo bộ phận, sau đó theo bậc lương]

Thuật toán sắp xếp chỉ sử dụng so sánh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
638 giữa các mục. Mặc dù xác định một phương pháp
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
639 là đủ để sắp xếp, PEP 8 khuyến nghị rằng tất cả sáu so sánh phong phú đều được triển khai. Điều này sẽ giúp tránh lỗi khi sử dụng cùng một dữ liệu với các công cụ đặt hàng khác, chẳng hạn như
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67 dựa trên một phương pháp cơ bản khác. Việc triển khai tất cả sáu phép so sánh cũng giúp tránh nhầm lẫn đối với các phép so sánh kiểu hỗn hợp có thể phản ánh phương pháp
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
641.

Để biết ví dụ sắp xếp và hướng dẫn sắp xếp ngắn gọn, hãy xem Sắp xếp CÁCH .

@phương thức tĩnh

Chuyển đổi một phương thức thành một phương thức tĩnh

Một phương thức tĩnh không nhận được đối số đầu tiên ngầm định. Để khai báo một phương thức tĩnh, hãy sử dụng thành ngữ này

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
12

Biểu mẫu

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
642 là một hàm trang trí – xem Định nghĩa hàm for details.

Một phương thức tĩnh có thể được gọi trên lớp [chẳng hạn như

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
665] hoặc trên một thể hiện [chẳng hạn như
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
666]. Hơn nữa, chúng có thể được gọi là các hàm thông thường [chẳng hạn như
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
645]

Các phương thức tĩnh trong Python tương tự như các phương thức được tìm thấy trong Java hoặc C++. Ngoài ra, hãy xem

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
7 để biết một biến thể hữu ích để tạo các hàm tạo lớp thay thế

Giống như tất cả các bộ trang trí, cũng có thể gọi

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
647 như một hàm thông thường và làm điều gì đó với kết quả của nó. Điều này là cần thiết trong một số trường hợp khi bạn cần tham chiếu đến một hàm từ thân lớp và bạn muốn tránh việc tự động chuyển đổi thành phương thức thể hiện. Đối với những trường hợp này, hãy sử dụng thành ngữ này

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
13

Để biết thêm thông tin về các phương thức tĩnh, hãy xem Hệ thống phân cấp loại tiêu chuẩn .

Đã thay đổi trong phiên bản 3. 10. Các phương thức tĩnh hiện kế thừa các thuộc tính của phương thức [

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
669,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
670,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
671,
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
672 và
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
673], có thuộc tính
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
674 mới và hiện có thể gọi được như các hàm thông thường.

lớp str[đối tượng='']lớp str[đối tượng=b'' , mã hóa='utf-8' , lỗi='nghiêm ngặt']

Trả về phiên bản

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
56 của đối tượng. Xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
67 để biết chi tiết

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
56 là chuỗi tích hợp sẵn class . Để biết thông tin chung về chuỗi, hãy xem Loại chuỗi văn bản — str .

sum[có thể lặp lại , / , bắt đầu=0]

Tính tổng bắt đầu và các mục của một lần lặp từ trái sang phải và trả về tổng. Các mục của iterable thường là các số và giá trị bắt đầu không được phép là một chuỗi

Đối với một số trường hợp sử dụng, có những lựa chọn thay thế tốt cho

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
68. Cách ưa thích, nhanh chóng để nối một chuỗi các chuỗi là gọi ____
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
658. Để thêm các giá trị dấu phẩy động với độ chính xác mở rộng, hãy xem
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
659. Để nối một loạt các lần lặp, hãy cân nhắc sử dụng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
660

Đã thay đổi trong phiên bản 3. 8. Tham số bắt đầu có thể được chỉ định làm đối số từ khóa.

hạng siêuhạng siêu[type , object_or_type=Không có]

Trả về một đối tượng proxy ủy thác các cuộc gọi phương thức cho một loại cha hoặc anh chị em. Điều này rất hữu ích để truy cập các phương thức kế thừa đã bị ghi đè trong một lớp

Object_or_type xác định thứ tự giải quyết phương pháp được tìm kiếm. Việc tìm kiếm bắt đầu từ lớp ngay sau loại.

Ví dụ: nếu

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
661 của object_or_type là
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
662 và giá trị của loại là
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
663, thì
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 tìm kiếm
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
665

Thuộc tính

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
661 của object_or_type liệt kê thứ tự tìm kiếm độ phân giải phương pháp được sử dụng bởi cả
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
61 và
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69. Thuộc tính động và có thể thay đổi bất cứ khi nào hệ thống phân cấp thừa kế được cập nhật

Nếu đối số thứ hai bị bỏ qua, siêu đối tượng được trả về không bị ràng buộc. Nếu đối số thứ hai là một đối tượng, thì

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
669 phải đúng. Nếu đối số thứ hai là một loại, thì
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
670 phải đúng [điều này hữu ích cho các phương thức lớp]

Có hai trường hợp sử dụng điển hình cho siêu. Trong một hệ thống phân cấp lớp với một kế thừa duy nhất, super có thể được sử dụng để chỉ các lớp cha mà không cần đặt tên rõ ràng cho chúng, do đó làm cho mã dễ bảo trì hơn. Việc sử dụng này gần giống với việc sử dụng super trong các ngôn ngữ lập trình khác

Trường hợp sử dụng thứ hai là hỗ trợ đa kế thừa hợp tác trong môi trường thực thi động. Trường hợp sử dụng này là duy nhất đối với Python và không có trong các ngôn ngữ được biên dịch tĩnh hoặc các ngôn ngữ chỉ hỗ trợ kế thừa đơn lẻ. Điều này cho phép triển khai “sơ đồ kim cương” trong đó nhiều lớp cơ sở triển khai cùng một phương thức. Thiết kế tốt chỉ ra rằng các triển khai như vậy có chữ ký gọi giống nhau trong mọi trường hợp [vì thứ tự của các lệnh gọi được xác định trong thời gian chạy, vì thứ tự đó thích ứng với những thay đổi trong hệ thống phân cấp lớp và vì thứ tự đó có thể bao gồm các lớp anh chị em không xác định trước thời gian chạy

Đối với cả hai trường hợp sử dụng, một lệnh gọi siêu lớp điển hình trông như thế này

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
14

Ngoài tra cứu phương thức,

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 còn hoạt động để tra cứu thuộc tính. Một trường hợp sử dụng khả thi cho việc này là gọi các bộ mô tả trong lớp cha hoặc lớp anh chị em.

Lưu ý rằng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 được triển khai như một phần của quy trình ràng buộc để tra cứu thuộc tính chấm rõ ràng, chẳng hạn như
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
673. Nó làm như vậy bằng cách triển khai phương thức
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
142 của riêng mình để tìm kiếm các lớp theo thứ tự có thể dự đoán được, hỗ trợ đa kế thừa hợp tác. Theo đó,
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 không được xác định để tra cứu ngầm định bằng cách sử dụng các câu lệnh hoặc toán tử, chẳng hạn như
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
676

Cũng lưu ý rằng, ngoài dạng đối số bằng 0,

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69 không giới hạn việc sử dụng các phương thức bên trong. Dạng hai đối số chỉ định chính xác các đối số và đưa ra các tham chiếu phù hợp. Dạng đối số 0 chỉ hoạt động bên trong một định nghĩa lớp, vì trình biên dịch sẽ điền vào các chi tiết cần thiết để truy xuất chính xác lớp đang được định nghĩa, cũng như truy cập thể hiện hiện tại cho các phương thức thông thường

Để biết các đề xuất thực tế về cách thiết kế các lớp hợp tác bằng cách sử dụng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
69, hãy xem hướng dẫn sử dụng super[]

lớp tuplelớp tuple[có thể lặp lại]

Thay vì là một hàm,

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
138 thực sự là một loại trình tự bất biến, như được ghi lại trong TuplesSequence Types — list, tuple, range.

lớp loại[đối tượng]lớp loại[tên , cơ sở , dict , **kwds]

Với một đối số, trả về loại đối tượng. Giá trị trả về là một đối tượng kiểu và thường là cùng một đối tượng được trả về bởi

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
680

Hàm tích hợp sẵn của

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
60 được khuyến nghị để kiểm tra loại đối tượng, vì nó tính đến các lớp con

Với ba đối số, trả về một đối tượng kiểu mới. Đây thực chất là một dạng động của câu lệnh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
682. Chuỗi tên là tên lớp và trở thành thuộc tính
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
670. Bộ cơ sở chứa các lớp cơ sở và trở thành thuộc tính
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
684; . Từ điển dict chứa các định nghĩa thuộc tính và phương thức cho thân lớp; . Hai câu lệnh sau tạo các đối tượng
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
687 giống hệt nhau

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
15

Xem thêm Loại đối tượng .

Các đối số từ khóa được cung cấp cho dạng ba đối số được chuyển đến bộ máy siêu dữ liệu thích hợp [thường là

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
688] giống như cách mà các từ khóa trong định nghĩa lớp [ngoài siêu dữ liệu] sẽ

Xem thêm Tùy chỉnh việc tạo lớp học .

Đã thay đổi trong phiên bản 3. 6. Các lớp con của

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
687 không ghi đè
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
690 có thể không còn sử dụng biểu mẫu một đối số để lấy loại đối tượng.

vars[]vars[đối tượng]

Trả về thuộc tính

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
145 cho một mô-đun, lớp, cá thể hoặc bất kỳ đối tượng nào khác có thuộc tính
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
145

Các đối tượng như mô-đun và phiên bản có thuộc tính

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
145 có thể cập nhật;

Không tranh cãi, _______ 6602 hành động như _______ 365. Lưu ý, từ điển địa phương chỉ hữu ích cho việc đọc vì các cập nhật cho từ điển địa phương bị bỏ qua

Một ngoại lệ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
107 được đưa ra nếu một đối tượng được chỉ định nhưng nó không có thuộc tính
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
145 [ví dụ: nếu lớp của nó xác định thuộc tính
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
622]

zip[*có thể lặp lại , nghiêm ngặt=Sai]

Lặp lại song song nhiều lần lặp, tạo ra các bộ dữ liệu với một mục từ mỗi bộ

Thí dụ

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
16

Chính thức hơn.

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
603 trả về một bộ lặp gồm các bộ lặp, trong đó bộ thứ i chứa phần tử thứ i từ mỗi bộ lặp đối số

Một cách khác để nghĩ về

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
603 là nó biến hàng thành cột và cột thành hàng. Điều này tương tự như chuyển vị một ma trận

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
603 lười biếng. Các phần tử sẽ không được xử lý cho đến khi iterable được lặp lại trên, e. g. bởi một vòng lặp
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
604 hoặc bằng cách gói trong một
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
136

Một điều cần xem xét là các lần lặp được chuyển đến

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
603 có thể có độ dài khác nhau; . Python cung cấp ba cách tiếp cận khác nhau để giải quyết vấn đề này

  • Theo mặc định,

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    603 dừng khi hết thời gian lặp lại ngắn nhất. Nó sẽ bỏ qua các mục còn lại trong các lần lặp dài hơn, cắt kết quả theo độ dài của lần lặp ngắn nhất

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    17

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    603 thường được sử dụng trong trường hợp các lần lặp được giả định là có độ dài bằng nhau. Trong những trường hợp như vậy, bạn nên sử dụng tùy chọn
    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    609. Đầu ra của nó giống như
    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    603 thông thường

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    18

    Không giống như hành vi mặc định, nó kiểm tra xem độ dài của các lần lặp có giống nhau hay không, nâng cao một

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    663 nếu chúng không giống nhau

    class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    19

    Nếu không có đối số

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    609, bất kỳ lỗi nào dẫn đến các lần lặp có độ dài khác nhau sẽ bị tắt tiếng, có thể biểu hiện dưới dạng một lỗi khó tìm trong một phần khác của chương trình

  • Các lần lặp ngắn hơn có thể được đệm bằng một giá trị không đổi để làm cho tất cả các lần lặp có cùng độ dài. Điều này được thực hiện bởi

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    613

trường hợp cạnh. Với một đối số có thể lặp lại duy nhất,

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
603 trả về một trình lặp gồm 1 bộ. Không có đối số, nó trả về một trình vòng lặp trống

Các mẹo và thủ thuật

  • Thứ tự đánh giá từ trái sang phải của các lần lặp được đảm bảo. Điều này có thể tạo thành một thành ngữ để phân cụm chuỗi dữ liệu thành các nhóm có độ dài n bằng cách sử dụng

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    615. Điều này lặp lại cùng một trình lặp
    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    616 lần để mỗi bộ dữ liệu đầu ra có kết quả của các lệnh gọi
    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    616 đến trình lặp. Điều này có tác dụng chia đầu vào thành các khối có độ dài n

  • class C:
        @classmethod
        def f[cls, arg1, arg2]: ...
    
    603 kết hợp với toán tử
    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    619 có thể được sử dụng để giải nén danh sách

    >>> format[14, '#b'], format[14, 'b']
    ['0b1110', '1110']
    >>> f'{14:#b}', f'{14:b}'
    ['0b1110', '1110']
    
    0

Đã thay đổi trong phiên bản 3. 10. Đã thêm đối số

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
620.

__import__[tên , toàn cầu=Không có , người dân địa phương=Không có , từ danh sách=[] , cấp độ=0]

Ghi chú

Đây là một chức năng nâng cao không cần thiết trong lập trình Python hàng ngày, không giống như

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
621

Hàm này được gọi bởi câu lệnh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
622. Nó có thể được thay thế [bằng cách nhập mô-đun
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
158 và gán cho
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
624] để thay đổi ngữ nghĩa của câu lệnh
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
622, nhưng làm như vậy không được khuyến khích vì sử dụng móc nhập [xem PEP 302] thường đơn giản hơn để đạt được các mục tiêu tương tự . Việc sử dụng trực tiếp
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
604 cũng không được khuyến khích để ủng hộ
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
621

Hàm nhập tên mô-đun, có khả năng sử dụng toàn cầu và cục bộ đã cho để xác định cách diễn giải tên trong ngữ cảnh gói. Danh sách từ cung cấp tên của các đối tượng hoặc mô hình con nên được nhập từ mô-đun được cung cấp theo tên. Việc triển khai tiêu chuẩn hoàn toàn không sử dụng đối số cục bộ của nó và chỉ sử dụng đối số toàn cầu của nó để xác định ngữ cảnh gói của câu lệnh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
622

level chỉ định sử dụng nhập khẩu tuyệt đối hay tương đối.

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
692 [mặc định] có nghĩa là chỉ thực hiện nhập tuyệt đối. Các giá trị dương cho level cho biết số lượng thư mục mẹ cần tìm kiếm liên quan đến thư mục của mô-đun đang gọi
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
604 [xem PEP 328 để biết chi tiết]

Khi biến tên có dạng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
631, thông thường, gói cấp cao nhất [tên cho đến dấu chấm đầu tiên] được trả về, không phải mô-đun được đặt tên theo tên. Tuy nhiên, khi một đối số từ danh sách không trống được đưa ra, mô-đun được đặt tên theo tên được trả về

Ví dụ: câu lệnh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
632 dẫn đến mã byte giống như mã sau

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
1

Tuyên bố

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
633 dẫn đến cuộc gọi này

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
2

Lưu ý cách

class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
604 trả về mô-đun cấp cao nhất ở đây vì đây là đối tượng được liên kết với một tên bằng câu lệnh
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
622

Mặt khác, câu lệnh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
636 dẫn đến

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
3

Ở đây, mô-đun

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
637 được trả về từ
class C:
    @classmethod
    def f[cls, arg1, arg2]: ...
604. Từ đối tượng này, các tên cần nhập được lấy và gán cho tên tương ứng của chúng

Nếu bạn chỉ muốn nhập một mô-đun [có khả năng nằm trong một gói] theo tên, hãy sử dụng

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
621

Đã thay đổi trong phiên bản 3. 3. Các giá trị âm cho cấp độ không còn được hỗ trợ [điều này cũng thay đổi giá trị mặc định thành 0].

Đã thay đổi trong phiên bản 3. 9. Khi các tùy chọn dòng lệnh

>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
640 hoặc
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
641 đang được sử dụng, biến môi trường
>>> format[14, '#b'], format[14, 'b']
['0b1110', '1110']
>>> f'{14:#b}', f'{14:b}'
['0b1110', '1110']
642 hiện bị bỏ qua.

chú thích

1

Lưu ý rằng trình phân tích cú pháp chỉ chấp nhận quy ước cuối dòng kiểu Unix. Nếu bạn đang đọc mã từ một tệp, hãy đảm bảo sử dụng chế độ chuyển đổi dòng mới để chuyển đổi các dòng mới kiểu Windows hoặc Mac

Bạn có thể in danh sách bằng Python không?

In một danh sách trong python có thể được thực hiện theo các cách sau. Sử dụng vòng lặp. Di chuyển từ 0 đến len[list] và in từng phần tử của danh sách bằng cách sử dụng vòng lặp for, đây là cách làm tiêu chuẩn để thực hiện

Bạn có thể in một đối tượng bằng Python không?

Trong Python, bạn có thể in các đối tượng vào tệp bằng cách chỉ định tham số tệp .

Chủ Đề