Hướng dẫn is match a keyword in python? - có khớp với một từ khóa trong python không?
Tôi không hoàn toàn hiểu tại sao từ khóa Show Phiên bản tiếp theo của Python, 3.10, là vào cuối alpha và dự kiến sẽ được phát hành vào giữa năm 2021. Nó có một số thay đổi nhỏ đối với ngôn ngữ, nhưng cũng là một phần mới của cú pháp mới, từ khóa `match`. Đó là phổ biến (trong bất kỳ ngôn ngữ lập trình nào) để kiểm tra một biến so với các điều kiện khác nhau, hành động trên trường hợp đầu tiên phù hợp. Hãy tưởng tượng mã như thế này, có thể hữu ích trong một ứng dụng đồ thị:
Chúng tôi có thể sử dụng điều này như:
Mã này khá đơn giản, nhưng nó có rất nhiều sự lặp lại --- chúng tôi tiếp tục phải kiểm tra các mục trong bộ phận bằng cách tra cứu. Chúng tôi có thể tái cấu trúc mã của mình để vượt qua điều này, nhưng sau đó chúng tôi không thể có điều này trong một khối `if/elif/other`, vì chúng tôi phải kiểm tra trước nếu chúng tôi được cung cấp . Cũng không may là trường hợp * không phải * của chúng tôi xảy ra ngay từ đầu; Sẽ rõ ràng hơn khi có điều đó vào cuối, như một sự bắt giữ cho bất cứ điều gì không phù hợp trước đây. Python 3.10 giới thiệu từ khóa mới `match`, cung cấp một tính năng giống như` switch` (được tìm thấy trong JavaScript và nhiều ngôn ngữ khác, nhưng không phải trong Python), nhưng với các tính năng bổ sung. Hãy xem mã của chúng tôi bằng cách sử dụng `match`:
Mệnh đề `match` của chúng tôi phù hợp với biến` point` và khớp dựa trên "hình dạng" của các điều khoản trường hợp: chúng tôi có thể sử dụng nghĩa đen có nghĩa là ý nghĩa của chúng. Vì vậy, `Case (0, 0)` sẽ chỉ khớp với một tuple với `(0, 0)` hoặc để khớp một phần mẫu. Kết hợp `case (0, y)` yêu cầu một bộ hai mục với phần tử thứ nhất là 0 và phần tử thứ hai có thể là bất cứ điều gì, sẽ được ghi lại trong biến mới `y`.) Cần phải liệt kê rằng trường hợp bắt tất cả mặc định phải được liệt kê --- đó sẽ là lỗi cú pháp nếu điều này không được thực hiện (đây là một tính năng bảo vệ tốt, giúp các lập trình viên viết mã cẩn thận hơn). `Case _` bắt mọi thứ. Có một thỏa thuận tốt hơn ở đây. Từ đề xuất tăng cường Python đã đưa ra tính năng này:
Đó là rất nhiều sự linh hoạt --- và chắc chắn sẽ làm cho việc xử lý các câu lệnh chuyển đổi phức tạp trong Python dễ dàng hơn rất nhiều! Python nói chung là bảo thủ trong việc thêm các tính năng mới vào ngôn ngữ, để giữ cho nó một ngôn ngữ có thể dễ dàng học và sử dụng bởi các chuyên gia cũng như các chuyên gia. Tuy nhiên, ý tưởng kết hợp mẫu đã có mặt ở một số ngôn ngữ mới khác, như Swift và Kotlin, vì vậy thật thú vị khi thấy ý tưởng này được chuyển trong Python. Match () trong Python là gì?khớp (mẫu, chuỗi): Phương thức này tìm thấy khớp nếu nó xảy ra khi bắt đầu chuỗi.Ví dụ: Gọi Match () trên chuỗi 'Hướng dẫn TP TP' và tìm kiếm một mẫu 'TP' sẽ khớp.Tuy nhiên, nếu chúng ta chỉ tìm kiếm các hướng dẫn, mẫu sẽ không khớp.This method finds match if it occurs at start of the string. For example, calling match() on the string 'TP Tutorials Point TP' and looking for a pattern 'TP' will match. However, if we look for only Tutorials, the pattern will not match.
Python 3.9 có phù hợp không?Kể từ đầu năm 2021, từ khóa trận đấu không tồn tại trong các phiên bản Python được phát hànhthe match keyword does not exist in the released Python versions <= 3.9. Since Python doesn't have any functionality similar to switch/case in other languages, you'd typically use nested if/elif/else statements or a dictionary.
Tuyên bố trận đấu là gì?Tuyên bố trận đấu là gì?Nếu bạn là lập trình viên C hoặc C ++, có khả năng bạn đã sử dụng hoặc ít nhất là nghe về việc sử dụng câu lệnh MATCH, chỉ là nó được đổi tên thành câu lệnh Switch.Tuyên bố này được sử dụng để kiểm soát luồng thực thi mã.used in order to control the flow of code execution.
Khi nào trận đấu được giới thiệu Python?'Kết hợp mô hình cấu trúc' mới được giới thiệu trong Python 3.10.Cú pháp cho tính năng mới này đã được đề xuất trong PEP 622 vào tháng 6 năm 2020. Tuyên bố phù hợp với mẫu của Python được lấy cảm hứng từ cú pháp tương tự được tìm thấy trong Scala, Erlang và các ngôn ngữ khác.Python 3.10. The syntax for this new feature was proposed in PEP 622 in JUne 2020. The pattern matching statement of Python was inspired by similar syntax found in Scala, Erlang, and other languages. |