Mô-đun xuất một tập hợp các hàm hiệu quả tương ứng với các toán tử nội tại của Python. Ví dụ, def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 14 tương đương với biểu thức def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 0. Nhiều tên hàm được sử dụng cho các phương thức đặc biệt, không có dấu gạch dưới kép. Để tương thích ngược, nhiều trong số này có một biến thể với dấu gạch dưới kép được giữ lại. Các biến thể không có dấu gạch dưới kép được ưu tiên cho rõ ràng
Các chức năng thuộc các danh mục thực hiện so sánh đối tượng, phép toán logic, phép toán và phép toán trình tự
Các hàm so sánh đối tượng hữu ích cho tất cả các đối tượng và được đặt tên theo các toán tử so sánh phong phú mà chúng hỗ trợ
toán tử. lt(a , b)toán tử. le(a , b)toán tử. eq(a , b)toán tử. ne(a , b)toán tử. ge(a , b)toán tử. gt(a , b)toán tử. __lt__(a , b)toán tử. __le__(a , b)toán tử. __eq__(a , b)toán tử. __ne__(a , b)toán tử. __ge__(a , b)toán tử. __gt__(a , b)Thực hiện “so sánh phong phú” giữa a và b. Cụ thể, def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 1 tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 2, def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 3 tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 4, def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 5 tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 6, def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 7 tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 8, def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 9 tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 00 và def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 01 tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 02. Lưu ý rằng các hàm này có thể trả về bất kỳ giá trị nào, có thể hoặc không thể hiểu được dưới dạng giá trị Boolean. Xem để biết thêm thông tin về so sánh phong phú
Các hoạt động logic cũng thường được áp dụng cho tất cả các đối tượng và hỗ trợ kiểm tra sự thật, kiểm tra danh tính và hoạt động boolean
toán tử. not_(obj)toán tử. __not__(obj)Trả về kết quả của obj. (Lưu ý rằng không có phương thức nào cho các thể hiện của đối tượng; chỉ lõi trình thông dịch xác định thao tác này. Kết quả bị ảnh hưởng bởi các phương pháp def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 05 và def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 06. )
toán tử. sự thật(obj)Trả về nếu obj là đúng, ngược lại. Điều này tương đương với việc sử dụng hàm tạo
toán tử. is_(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 50. Kiểm tra nhận dạng đối tượng
toán tử. is_not(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 51. Kiểm tra nhận dạng đối tượng
Các hoạt động toán học và bitwise là nhiều nhất
toán tử. abs(obj)toán tử. __abs__(obj)Trả về giá trị tuyệt đối của obj
toán tử. add(a , b)toán tử. __add__(a , b)Trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 52, cho số a và b
toán tử. and_(a , b)toán tử. __and__(a , b)Trả về bitwise và của a và b
toán tử. floordiv(a , b)toán tử. __floordiv__(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 53
toán tử. index(a)toán tử. __index__(a)Trả lại một chuyển đổi thành một số nguyên. Tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 54
Đã thay đổi trong phiên bản 3. 10. Kết quả luôn có loại chính xác. Trước đây, kết quả có thể là một thể hiện của một lớp con của def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 55.
toán tử. inv(obj)toán tử. đảo ngược(obj)toán tử. __inv__(obj)toán tử. __invert__(obj)Trả về nghịch đảo bit của số obj. Điều này tương đương với def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 57
toán tử. lshift(a , b)toán tử. __lshift__(a , b)Trả về một dịch chuyển sang trái bởi b
toán tử. mod(a , b)toán tử. __mod__(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 58
toán tử. mul(a , b)toán tử. __mul__(a , b)Trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 59, cho số a và b
toán tử. matmul(a , b)toán tử. __matmul__(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 40
Mới trong phiên bản 3. 5
toán tử. neg(obj)toán tử. __neg__(obj)Trả về obj bị phủ định (def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 41)
toán tử. or_(a , b)toán tử. __or__(a , b)Trả về bitwise hoặc của a và b
toán tử. pos(obj)toán tử. __pos__(obj)Trả về obj dương (def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 42)
toán tử. pow(a , b)toán tử. __pow__(a , b)Trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 43, cho số a và b
toán tử. rshift(a , b)toán tử. __rshift__(a , b)Trả về a đã dịch chuyển sang phải bởi b
toán tử. sub(a , b)toán tử. __sub__(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 44
toán tử. trueiv(a , b)toán tử. __truediv__(a , b)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 45 trong đó 2/3 là. 66 thay vì 0. Đây còn được gọi là phép chia “đúng”
toán tử. xor(a , b)toán tử. __xor__(a , b)Trả về loại trừ theo bit hoặc của a và b
Các hoạt động hoạt động với các chuỗi (một số trong số chúng cũng có ánh xạ) bao gồm
toán tử. concat(a , b)toán tử. __concat__(a , b)Trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 52 cho chuỗi a và b
toán tử. chứa(a , b)toán tử. __contains__(a , b)Trả về kết quả của bài kiểm tra def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 47. Lưu ý các toán hạng đảo ngược
toán tử. countOf(a , b)Trả về số lần xuất hiện của b trong a
toán tử. delitem(a , b)toán tử. __delitem__(a , b)Xóa giá trị của a tại chỉ mục b
toán tử. getitem(a , b)toán tử. __getitem__(a , b)Trả về giá trị của a tại chỉ mục b
toán tử. indexOf(a , b)Trả về chỉ số của lần xuất hiện đầu tiên của b trong a
toán tử. setitem(a , b , c)toán tử. __setitem__(a , b , c)Đặt giá trị của a tại chỉ mục b thành c
toán tử. length_hint(obj , mặc định=0)Trả về độ dài ước tính cho đối tượng o. Trước tiên, hãy thử trả về độ dài thực của nó, sau đó là ước tính bằng cách sử dụng và cuối cùng trả về giá trị mặc định
Mới trong phiên bản 3. 4
Hoạt động sau hoạt động với callables
toán tử. cuộc gọi(obj , / , *args , **kwargs)toán tử. __call__(obj , / , *args , **kwargs)Trả lại def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 49
Mới trong phiên bản 3. 11
Mô-đun này cũng xác định các công cụ để tra cứu thuộc tính và mục tổng quát. Chúng rất hữu ích để tạo các trình trích xuất trường nhanh làm đối số cho , , hoặc các hàm khác mong đợi một đối số hàm
toán tử. attrgetter(attr)toán tử. attrgetter(*attrs)Trả về một đối tượng có thể gọi được tìm nạp attr từ toán hạng của nó. Nếu nhiều hơn một thuộc tính được yêu cầu, trả về một bộ thuộc tính. Tên thuộc tính cũng có thể chứa dấu chấm. Ví dụ
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 34, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 35 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 36
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 37, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 35 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 39
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 90, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 35 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 92
Tương đương với
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 2
toán tử. itemgetter(item)toán tử. itemgetter(*mặt hàng)Trả về một đối tượng có thể gọi được để tìm nạp mục từ toán hạng của nó bằng phương thức của toán hạng. Nếu nhiều mục được chỉ định, trả về một bộ giá trị tra cứu. Ví dụ
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 94, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 95 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 96
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 97, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 98 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 99
Tương đương với
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g
Các mục có thể là bất kỳ loại nào được phương thức của toán hạng chấp nhận. Từ điển chấp nhận mọi giá trị có thể băm. Danh sách, bộ dữ liệu và chuỗi chấp nhận chỉ mục hoặc lát cắt
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 0
Ví dụ về cách sử dụng để truy xuất các trường cụ thể từ bản ghi bộ
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 5
toán tử. người gọi phương thức(tên , / , *args , **kwargs)Trả về một đối tượng có thể gọi được gọi tên phương thức trên toán hạng của nó. Nếu các đối số bổ sung và/hoặc đối số từ khóa được cung cấp, chúng cũng sẽ được cung cấp cho phương thức. Ví dụ
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 152, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 35 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 154
Sau def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 155, cuộc gọi def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 35 trả về def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 157
Tương đương với
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 4
Ánh xạ toán tử tới hàm
Bảng này cho biết cách các phép toán trừu tượng tương ứng với các ký hiệu toán tử trong cú pháp Python và các hàm trong mô-đun
Hoạt động
cú pháp
Chức năng
Phép cộng
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 52
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 150
nối
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 151
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 152
kiểm tra ngăn chặn
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 153
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 154
Phân công
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 45
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 156
Phân công
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 53
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 158
theo chiều bit và
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 159
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 140
Bitwise độc quyền hoặc
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 141
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 142
Đảo chiều bit
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 143
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 144
Bitwise Hoặc
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 145
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 146
lũy thừa
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 43
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 148
Xác thực
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 50
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 00
Xác thực
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 51
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 02
Bài tập được lập chỉ mục
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 03
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 04
Xóa chỉ mục
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 05
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 06
lập chỉ mục
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 07
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 08
Dịch trái
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 09
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 10
mô-đun
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 58
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 12
Phép nhân
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 59
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 14
Phép nhân ma trận
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 40
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 16
Phủ định (Số học)
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 17
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 18
Phủ định (Logic)
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 19
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 20
Tích cực
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 21
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 22
Ca phải
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 23
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 24
Bài tập cắt lát
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 25
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 26
Xóa lát cắt
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 27
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 28
cắt lát
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 29
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 30
Định dạng chuỗi
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 31
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 32
phép trừ
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 44
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 34
Kiểm tra sự thật
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 35
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 36
đặt hàng
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 2
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 1
đặt hàng
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 4
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 3
bình đẳng
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 6
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 5
Sự khác biệt
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 8
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 7
đặt hàng
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 02
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 01
đặt hàng
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 00
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 9
Người vận hành tại chỗ
Nhiều thao tác có phiên bản “tại chỗ”. Liệt kê dưới đây là các hàm cung cấp quyền truy cập nguyên thủy hơn cho các toán tử tại chỗ so với cú pháp thông thường; . Một cách diễn đạt khác là nói rằng def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 51 tương đương với câu lệnh ghép def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 52
Trong các ví dụ đó, lưu ý rằng khi một phương thức tại chỗ được gọi, việc tính toán và gán được thực hiện theo hai bước riêng biệt. Các chức năng tại chỗ được liệt kê bên dưới chỉ thực hiện bước đầu tiên, gọi phương thức tại chỗ. Bước thứ hai, chuyển nhượng, không được xử lý
Đối với các mục tiêu không thay đổi như chuỗi, số và bộ dữ liệu, giá trị cập nhật được tính nhưng không được gán lại cho biến đầu vào
def itemgetter(*items): if len(items) == 1: item = items[0] def g(obj): return obj[item] else: def g(obj): return tuple(obj[item] for item in items) return g 3
Đối với các mục tiêu có thể thay đổi như danh sách và từ điển, phương thức tại chỗ sẽ thực hiện cập nhật, do đó không cần chuyển nhượng tiếp theo