Toán tử Python mới!
ngày 1 tháng 4 năm 2023
Người ta đã nói nhiều về "toán tử hải mã" mới trong Python 3.8, được viết là :=. Bài đăng này giới thiệu một số toán tử có tên kỳ quái ít được biết đến. Những thứ này không chỉ có sẵn trong Python 3.8 mà còn tự động có sẵn trong các phiên bản Python trước đó, kể từ hôm nay, ngày 1 tháng 4 năm 2023!
Người điều hành mũ trượt tuyết
Toán tử “ski hat”, được viết là *=0, có thể được sử dụng để làm trống một biến, có thể là một danh sách, chuỗi, bộ hoặc giá trị số. Ví dụ: sau khi thực thi đoạn mã sau, itemssẽ là một danh sách trống.
items = [1, 2, 3]
items *=0
Ski Hat Operator *=0
"Toán tử quả tạ", được viết là [:]=[], cũng có thể được sử dụng để làm trống danh sách, nhưng không linh hoạt bằng toán tử mũ trượt tuyết, vì nó chỉ hoạt động đối với danh sách (và một số loại khác ít được sử dụng hơn). Sau đoạn mã sau, itemssẽ là một danh sách trống:
items = [1, 2, 3]
items [:]=[]
Dumbbell Operator [:]=[]
Toán tử “patch cat” hoặc “one and only”, được viết là ,=, chọn phần tử đầu tiên của một iterable và xác nhận rằng iterable có chính xác một phần tử. Sau đoạn mã sau, firstlà 1.
first ,= [1]
Lapping Cat Operator ,=
Những người hâm mộ toán học sẽ rất vui khi biết rằng toán tử giai thừa một ngôi, được viết là, ví dụ, 3!, đã được tích hợp một phần vào Python. Thật không may, việc thực hiện là không đầy đủ. Nhưng các bài kiểm tra đơn vị sau tất cả đều vượt qua, vậy là đủ tốt, phải không?
assert 0!=1
assert 3!=6
assert 4!=24
assert 5!=120
assert 6!=720
assert 9!=362,880
Python cũng cho phép bạn sử dụng từ khóa abstractđể chỉ ra rằng một phương thức của một lớp trừu tượng phải được triển khai trong một lớp con cho bất kỳ đối tượng được khởi tạo nào. Trong đoạn mã sau, phương thức nameđược định nghĩa là abstract, do đó, một cuộc gọi đến một đối tượng của lớp dẫn đến một thông báo lỗi chỉ ra rằng phương thức không được xác định.
class AnAbstractClass:
def name(self):
abstract
>>> AnAbstractClass().name()
NameError: name 'abstract' is not defined
Người đọc tinh ý sẽ nhận ra rằng các toán tử mới này như tôi đã trình bày dựa trên việc sắp xếp (hoặc thiếu sắp xếp) các khoảng trắng theo cách vi phạm PEP 8 . Tôi nói: nhưng cách của tôi thú vị hơn! Đặc biệt là hôm nay, ngày 1 tháng 4. Để biết thêm các toán tử, bao gồm cả việc triển khai các toán tử ++và <<từ C++, hãy xem vị trí cũ của tôi .
Tái bút: Mọi thứ trong bài đăng này đều là sự thật, ngoại trừ “đủ tốt rồi phải không?”
Các bài viết trong Series này
Ngày 1 tháng 4 năm 2016: Đi đi, Chó. Gauguin! Câu chuyện của PD Eastman
Ngày 1 tháng 4 năm 2017: Dòng tweet cuối cùng của Krell
Ngày 1 tháng 4 năm 2018: Lối sống chức năng
Ngày 1 tháng 4 năm 2020: Hy vọng tôi kết hợp trước khi già đi
Ngày 1 tháng 4 năm 2021: Hamilton: Vở nhạc kịch toán học
Ngày 1 tháng 4 năm 2023: Bằng sáng chế chuyển mạch gói được tiết lộ!
Ngày 1 tháng 4 năm 2023: Toán tử Python mới!

![Dù sao thì một danh sách được liên kết là gì? [Phần 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































