Hướng dẫn why does python not use curly braces? - tại sao python không sử dụng dấu ngoặc nhọn?
Vâng, đó là giải thích rất nhiều. Tuy nhiên, lưu ý rằng Python không hỗ trợ các khối mã Brace-D Curly! Hãy xem bên dưới: Show
Đối với các lập trình viên ADA hoặc Pascal, tôi rất vui mừng khi tiết lộ cho bạn:
Lấy từ các tài liệu:
Và điều này, đối với người dùng bash:
Thậm chí tốt hơn, đối với các lập trình viên quen thuộc với C, C ++, v.v., bạn có thể bỏ qua hoàn toàn niềng răng xoăn chỉ cho một câu lệnh:
Xinh đẹp. Như đã đề cập trước đó, Python cũng có thể tự động sửa mã bằng các dấu phân cách không chính xác, vì vậy mã này cũng hợp pháp:
Vì điều này phải khiến bạn yêu Python hơn nữa, tôi gửi cho bạn với một trích dẫn cuối cùng từ các tài liệu.
Hạn chế duy nhất là các phân định đặc biệt này được đi trước bởi biểu tượng hashtag. is that these special delimiters be preceded by a hashtag symbol. Phạm vi giằng xoăn, tự động hóa và các phương pháp khác để viết mã tốt hơnẢnh của Josh Kahen trên unplashPython sẽ luôn tìm thấy một cái gì đó để làm chúng tôi ngạc nhiên - đơn giản là có quá nhiều tính năng tuyệt vời được nhồi nhét vào ngôn ngữ. May mắn thay, điều này có nghĩa là chúng tôi không bao giờ hết mọi thứ để học.ython will always find something to surprise us with — there are simply far too many brilliant features crammed into the language. Fortunately, this means we never run out of things to learn. Theo thời gian, tôi đã xây dựng thói quen ghi chú mọi tính năng mới mà tôi vấp ngã trong Python. Chủ yếu là họ rất thú vị nhưng đi kèm với các trường hợp sử dụng khá hẹp. Tuy nhiên, những lần khác, tôi vấp phải một tính năng thực sự rất có thể áp dụng được - và thông thường, nó sẽ thay đổi cách tôi mã. Tôi theo dõi những điều này với một danh sách và bài viết này bao gồm năm tính năng yêu thích của tôi từ danh sách đó. Get Method for Dictionaries - no more KeyErrors Nhận phương pháp cho từ điểnPhương pháp từ điển 6 thực hiện hoạt động tương tự như cú pháp 7 phổ biến hơn với một sự khác biệt đáng kể - chúng tôi không có lỗi nếu 8 không tồn tại trong từ điển của chúng tôi:dictionary = { 9Với GET -get — dictionary.get('three') 0Thay vì trả về KeyError, phương thức 6 không trả về không.KeyError, the 6 method returns None.Chúng ta có thể tiến thêm một bước bằng cách chỉ định giá trị để trả về nếu 8 không tồn tại với đối số thứ hai của phương thức 6: 0 4 1 5Cuối cùng, nếu bạn biết nội dung của từ điển của bạn - đừng sử dụng 6 thì nó chậm hơn! (Cảm ơn Petru)Kiểu dữ liệu câyMột kiểu dữ liệu cây trông như thế này: Biểu diễn cây của các từ trong một câu và các phần tương ứng của chúng của các thẻ lời nói (POS). Nguồn: Tác giả.Nó đại diện cho một cấu trúc cây phân cấp với giá trị gốc ở lớp trên cùng, phân nhánh thành các nút con. Mỗi nút con có một nút cha và mỗi nút cha có thể có một hoặc nhiều nút con. Bây giờ, đại diện của chúng tôi trong Python sẽ rất giống với một từ điển lồng nhau, mà chúng tôi sẽ xây dựng như thế này: 2Ở đây chúng ta cần xác định một từ điển mới cho mỗi nút trẻ, từng bước một. Nó rất chậm, lộn xộn và dễ bị lỗi-hãy tưởng tượng điều này cho một cây năm lớp đơn giản trong đó mỗi nút cha mẹ chỉ có hai nút con. May mắn thay, chúng ta có thể xây dựng kiểu dữ liệu cây của mình chỉ với điều này: Bây giờ, thay vì xác định từng từ điển trẻ khi chúng ta đi, chúng ta có thể xây dựng toàn bộ các nhánh ngay lập tức: 3 Cây phân loại của người bạn tốt nhất và những thứ khác mà mọi người thích. Ảnh của Jamie Street trên unplash (trái), ảnh của Kari Shea trên unplash (phải).man’s best friend and those other things people like. Photo by
Jamie Street on Unsplash (left), Photo by Kari Shea on
Unsplash (right).Phương pháp này có một tên, tự động hóa - việc tạo tự động các mảng và băm mới mỗi khi giá trị không xác định được giải thích. Một triển khai dòng duy nhất khác (không bao gồm nhập) có thể được tìm thấy ở đây. Lập chỉ mục danh sách nâng caoCác bướcCó một số phương pháp cắt danh sách chưa biết, mặc dù hữu ích. Đầu tiên trong số đó là việc sử dụng các bước:steps: 4 7Cú pháp chúng tôi đang sử dụng ở đây là 8 - bởi vì chúng tôi để trống 9 và 0, chúng tôi lặp lại từ đầu đến cuối danh sách, với 1 của 2. 5 3Những lát được đặt tênPhương pháp cắt danh sách nâng cao sau đây được gọi là các lát được đặt tên. Ở đây, chúng tôi gán một lát cho một biến, như vậy:named slices. Here, we assign a slice to a variable, like so: 6Sau đó, chúng tôi có thể áp dụng lát cắt được đặt tên này vào bất kỳ danh sách nào. 7 4Cú pháp chúng tôi đang sử dụng ở đây sử dụng cùng một mẫu bắt đầu, kết thúc, bước - 5. Chúng ta có thể viết lại 6 như thế này: 8 7Chức năng trang tríMột chức năng trang trí là một trong những điều kỳ lạ 8 mà tôi chắc chắn rằng nhiều người trong chúng ta đã thấy - đặc biệt, thư viện Flask tận dụng chúng.Họ rất đơn giản đáng ngạc nhiên để hiểu và cực kỳ hữu ích. Các nhà trang trí chỉ cần cho phép chúng tôi sửa đổi hành vi của một chức năng mà không cần sửa đổi rõ ràng chức năng của chúng tôi. Ví dụ: chúng ta có thể xác định hàm 9 sẽ lặp lại thông qua một phạm vi, cuối cùng trả về in giá trị cuối cùng nhân với hai: 9 0Chức năng này sẽ không làm gì khác ngoài việc mất nhiều thời gian để chạy - nhưng đó là những gì chúng tôi muốn. Chúng ta sẽ đến lúc thời gian chạy của chức năng này bằng cách sử dụng chức năng trang trí. Người trang trí được định nghĩa giống như bất kỳ chức năng bình thường nào: 0Sau đó, chúng ta có thể sử dụng cú pháp @ Weird @ đó khi xác định chức năng 9 của chúng ta để kế thừa hành vi 2. 1Chúng tôi cũng có thể sử dụng nhiều nhà trang trí. Hãy để xác định một người khác được gọi là 3 sẽ lặp lại trên bất kỳ chức năng nào hai lần. 2Nếu bây giờ chúng tôi áp dụng cả hai người trang trí 4 và 5 cho các chức năng 9 của chúng tôi, chúng tôi sẽ nhận được điều này: 3Ở đây, chúng tôi đã kết thúc 9 vào 5 và chức năng kết quả thành 4 - giống như một số chức năng Python Frankenstein kỳ lạ của Frankenstein.Các nhà trang trí chúng tôi đã sử dụng ở đây là những ví dụ đồ chơi đơn giản. Chúng ta có thể làm nhiều hơn nữa với các nhà trang trí - Tôi khuyên bạn nên xem xét các bài viết/tài nguyên này:a lot more with decorators — I would recommend taking a look at these articles/resources:
Biểu thị phạm vi với niềng răngDễ dàng là tính năng nâng cao yêu thích của tôi trong Python, thay vì dựa vào khoảng trắng để biểu thị phạm vi (nhàm chán) - chúng ta có thể sử dụng niềng răng xoăn! Chúng tôi nhập chức năng từ thư viện 0: 4Và chúng ta đi! Đó là năm tính năng không phổ biến, nhưng các tính năng siêu tiện dụng trong Python. Một vài đề cập danh dự mà tôi đã muốn rời đi để thử: 5Tôi đã kết hợp một repo github nhỏ với các ví dụ về tất cả các tính năng trên, và hơn thế nữa, ở đây. Kiểm tra nó để biết đoạn mã - và tất nhiên, hãy tự thoải mái để thêm của riêng bạn! Nếu bạn có bất kỳ đề xuất hoặc câu hỏi nào, vui lòng liên hệ qua Twitter hoặc trong các ý kiến dưới đây. Hoặc, nếu bạn thích nhiều nội dung như thế này, tôi cũng đăng trên YouTube. Cảm ơn vì đã đọc! Python có thể sử dụng niềng răng xoăn không?Niềng răng xoăn - {} Một trong những khác biệt lớn nhất giữa Python và các ngôn ngữ lập trình phổ biến khác là trong Python, niềng răng xoăn không được sử dụng để tạo các khối chương trình để điều khiển dòng chảy.Trong Python, thụt lề được sử dụng để điều khiển dòng chảy, giúp Python dễ đọc hơn nhiều so với hầu hết các ngôn ngữ lập trình khác.curly braces are not used to create program blocks for flow control. In Python, indentation is used for flow control, which makes Python much easier to read than most other programming languages.
Khung {} có nghĩa là gì trong Python?Khung {} có nghĩa là gì trong Python?[] Dấu ngoặc được sử dụng cho danh sách.Nội dung danh sách có thể được thay đổi, không giống như nội dung tuple.{} được sử dụng để xác định từ điển trong danh sách của người Hồi giáo được gọi là nghĩa đen.used to define a dictionary in a “list” called a literal. |