top of page

PYTHON 3.9 CÓ GÌ MỚI!

Một vài đặc điểm mới của Python 3.9 cực kỳ thú vị và sẽ khiến bạn ngạc nhiên khi sử dụng. Các tính năng đó là:

  • Dictionary Union Operators (Điều hành từ điển)

  • Type Hinting (Gợi ý kiểu)

  • Two New String Methods (Hai phương thức chuỗi mới)

  • New Python Parser (Trình phân tích cú pháp Python mới)

PYTHON 3.9 CÓ GÌ MỚI

Nào cùng tìm hiểu về tính năng mới đầu tiên nhé!

1. Dictionary Union (Hợp nhất từ điển)

Một trong những tính năng mà tôi thích nhất là cú pháp trơn. Nếu bạn có 2 từ điển ab đang cần hợp nhất, thì bạn có thể dùng hợp nhất từ điển (Dictionary Union) để hợp nhất.

Chúng ta có điều hành hợp nhất | :

Dictionary Union (Hợp nhất từ điển)

Và điều hành cập nhật |= :

Dictionary Union (Hợp nhất từ điển)

Nếu những từ điển của bạn chia sẻ một khóa chung (common key), một cặp giá trị chính của từ điển thứ 2 sẽ được sử dụng:

Dictionary Union (Hợp nhất từ điển)

Cập nhật từ điển với vòng lặp (Dictionary Update with Iterables)

Một chức năng khác của điều hành |= là khả năng cập nhật từ điển với những cặp giá trị chính mới sử dụng mục tiêu lặp như một danh sách hoặc máy phát:

Dictionary Union (Hợp nhất từ điển)

Nếu chúng ta thực hiện tương tự với mức điều hành hợp nhất tiêu chuẩn | chúng ta sẽ nhận lại kết quả TypeError vì nó chỉ cho phép điều hành giữa các kiểu dict.

kết quả TypeError
hàng trăm công việc IT hấp dẫn

2. Type Hinting (Gợi ý kiểu)

Python được phân kiểu rất đa dạng, nghĩa là bạn không cần xác định rõ kiểu dữ liệu trong mã của bạn. Điều đó rất tốt nhưng đôi lúc nó sẽ gây ra sự nhầm lẫn, tính linh hoạt của Python đột nhiên nhiều hơn trở nên thật phiền toái hơn bất kỳ điều gì khác.

Với phiên bản 3.5 chúng ta phải xác định rõ các kiểu của nó, nhưng điều đó rất nặng nề cho lập trình viên. Bản cập nhật mới này đã thay đổi, hãy nhìn ví dụ:

Type Hinting (Gợi ý kiểu)

Trong chức năng add_int, chúng ta muốn rõ ràng để thêm vào số tương tự vào chính nó (cho một vài lý do không xác định bí mật). Nhưng chúng ta không biết điều đó, và hoàn toàn ổn khi thêm hai chuỗi với nhau bằng cách sử dụng + vì vậy không có cảnh báo nào được đưa ra.

Cái mà chúng ta có làm đó là xác định rõ loại đầu vào dự kiến là int. Sử dụng điều này, bạn có thể xử lý vấn đề ngay lập tức.

Chúng tôi có thể nhận được khá cụ thể về các loại bao gồm, ví dụ:

Type Hinting (Gợi ý kiểu)

Gợi ý kiểu có thể sử dụng ở bất cứ đâu và nhờ vào cú pháp mới nó dễ nhìn hơn:

Type Hinting (Gợi ý kiểu)
hàng trăm công việc IT hấp dẫn

3. String Methods (Phương thức chuỗi mới)

Nó thì không quá hào nhoáng như các đặc điểm khác, nhưng nó rất quan trọng để đề cập đến với những lợi ích cụ thể. Hai phương pháp chuỗi mới loại bỏ các tiền tố và hậu tố được thêm vào:

String Methods (Phương thức chuỗi mới)

4. Python Parser (Trình phân tích cú pháp Python)

Đây là một thay đổi ngoài tầm nhìn nhưng có tiềm năng trở thành một trong những thay đổi quan trọng nhất cho sự phát triển trong tương lai của Python.

Hiện nay Python sử dụng ngữ pháp dựa vào LL(1), cái trong lượt có thể được phân tích bởi một trình cú pháp phân tích LL(1) - cái phân tích cú pháp từ trên xuống dưới, từ trái sang phải với cái nhìn chỉ một mã thông báo.

Một số vấn đề hiện tại trong Python do sử dụng phương pháp này:

  • Python chứa ngữ pháp non-LL(1), bởi vì điều đó một phần ngữ pháp hiện tại sử dụng các cách giải quyết, tạo sự phức tạp không cần thiết.

  • LL(1) tạo ra sự giới hạn trong cú pháp Python (không có cách giải quyết khác). Vấn đề này nhấn mạnh rằng mã sau đây đơn giản là không thể được thực hiện bằng cách sử dụng trình phân tích cú pháp hiện tại (nâng cao SyntaxError)

Ví dụ về trình nâng cao syntaxerror
  • LL(1) nghỉ với đệ quy trái (left-recursion) trong trình phân tích cú pháp. Có nghĩa là cú pháp đệ quy cụ thể có thể gây ra một vòng lcây phân tích cú pháp.

Tất cả các yếu tố này (và nhiều yếu tố khác mà tôi đơn giản không thể hiểu được) có một tác động lớn đến Python; họ hạn chế sự phát triển của ngôn ngữ.

Đó là tất cả mọi thứ chúng ta có thể mong đợi với Python 3.9 sắp tới. Thật đáng chờ đợi và sử dụng đúng không nào, cùng JT1 chờ đón phiên bản Python 3.9. Ngoài ra JT1 còn có nhiều bài viết chia sẻ không chỉ về kiến thức mà còn về các kỹ năng mềm cho dân IT mong muốn trở nên chuyên nghiệp hơn trong con đường sự nghiệp của mình, tại: https://www.jt1.vn/

_Nguồn tổng hợp_

-------------------------------

JT1 - IT Recruitment Agency

Email: hi@jt1.vn

Điện thoại: +8428 6675 6685

Xem thêm các bài viết khác tại: https://www.jt1.vn/blog

Theo dõi chúng tôi tại: https://www.facebook.com/jt1asia/

Comments


Job_link_banner.gif
bottom of page