Gán giá trị cho từ điển trong vòng lặp Python
Sử dụng cấu trúc từ điển với các vòng lặp cực kỳ hiệu quả trong python. Trong thẻ này, tôi sẽ chỉ cho bạn một số ví dụ về cách sử dụng từ điển trong vòng lặp for Show
Ví dụ đầu tiên tôi sẽ trình bày là mở rộng một từ điển thành một danh sách các danh sách. Hãy tưởng tượng rằng bạn có một từ điển trong đó khóa là sản phẩm và giá trị là số lượng sản phẩm trong kho. Dưới đây là một ví dụ về cách tôi muốn thay đổi cấu trúc dữ liệu của mình
Để đạt được điều này, chúng ta có thể bắt đầu bằng việc viết ra các bước để giải quyết Chúng ta cần lặp lại tất cả các phím trái cây và tạo một danh sách lặp lại phím Tôi sẽ làm điều này bằng cách sử dụng hiểu danh sách
Tôi có thể viết cái này dưới dạng một vòng lặp for và sau đó chuyển đổi nó thành cách hiểu danh sách mà tôi nghĩ là trực quan hơn. Dưới đây là mã dưới dạng vòng lặp for
Bây giờ chúng ta có thể làm điều tương tự với việc hiểu danh sách. Hiểu danh sách là hành động đặt vòng lặp for vào danh sách. Điều này có vẻ hơi kỳ lạ, nhưng những người tạo ra python nhận ra rằng việc sử dụng vòng lặp for để tạo danh sách là đủ phổ biến và điều quan trọng là tạo lối tắt Khả năng hiểu danh sách ban đầu rất khó khăn vì nó có cảm giác không tự nhiên, nhưng bạn càng viết mã bằng python, bạn sẽ càng thấy nhiều lợi ích bổ sung của việc sử dụng khả năng hiểu danh sách. chỉ cần nhớ. Mọi thứ bạn làm với khả năng hiểu danh sách đều có thể được thực hiện với vòng lặp for. Nhưng điều ngược lại là không đúng Cú pháp hiểu danh sách
Bạn cũng có thể thêm câu điều kiện vào phần hiểu danh sách
Vì vậy, làm thế nào điều này áp dụng cho vấn đề trên?
Chúng tôi sẽ khám phá thêm khả năng hiểu danh sách trong tương lai, vì vậy hiện tại chỉ cần đảm bảo rằng bạn hiểu cách chúng tôi đang sử dụng phương pháp 0 Nhiều bạn đã liên hệ với tôi để yêu cầu cung cấp các tài nguyên quý giá để hoàn thành các cuộc phỏng vấn Kỹ thuật dữ liệu dựa trên Python. Dưới đây tôi chia sẻ 3 khóa học theo yêu cầu mà tôi thực sự khuyên dùng
Hy vọng bạn cũng sẽ thấy chúng hữu ích. Bây giờ thưởng thức bài viết. D Giới thiệuTừ điển Python được định nghĩa là một tập hợp các giá trị dữ liệu, trong đó các mục được giữ dưới dạng các cặp khóa-giá trị. Vì lý do này, từ điển còn được gọi là mảng kết hợp Nếu bạn còn khá mới với Python hoặc bạn đang chuẩn bị cho vòng viết mã tiếp theo của mình, bạn có thể đã vấp phải một số thuật toán yêu cầu tương tác với từ điển Tuy nhiên, có vẻ như các từ điển tiếp tục thu hút sự quan tâm không chỉ của những người mới mà còn của các nhà phát triển có kinh nghiệm hơn. Trên thực tế, khi xem xét các câu hỏi hàng đầu về Stack Overflow Python mọi thời đại, có vẻ như ba trong số các chủ đề được bình chọn nhiều nhất là
Trong bài viết này, tôi sẽ cố gắng cung cấp cho bạn câu trả lời ngắn gọn và rõ ràng cho từng câu hỏi này. Điều này sẽ giúp bạn không phải xem qua hàng chục bình luận trên web Hãy bắt đầu từ đầu. 👆👆🏽👆🏻 Làm cách nào để lặp lại từ điển bằng vòng lặp 'for'?Để trả lời câu hỏi này, tôi đã tạo một từ điển bao gồm dữ liệu của một giao dịch ngân hàng trực tuyến giả transaction_data = { Phương pháp 1. Lặp lại bằng vòng lặp For + Lập chỉ mụcCách dễ nhất để duyệt qua một từ điển trong Python là đặt nó trực tiếp vào một vòng lặp # METHOD 1 - Unsorted4. Python sẽ tự động coi # METHOD 1 - Unsorted5 như một từ điển và cho phép bạn lặp lại các khóa của nó Sau đó, để có quyền truy cập vào các giá trị, bạn có thể chuyển từng khóa vào từ điển bằng cách sử dụng toán tử lập chỉ mục # METHOD 1 - Unsorted6________số 8_______ Như bạn có thể thấy, các phím không được sắp xếp theo thứ tự bảng chữ cái. Để đạt được điều đó, bạn chỉ cần chuyển # METHOD 1 - Unsorted5 cho phương thức # METHOD 1 - Unsorted8 # METHOD 1 - Sorted Phương pháp 2. Lặp lại bằng cách sử dụng. keys() + Lập chỉ mụcCó thể thu được kết quả tương tự bằng cách sử dụng phương thức # METHOD 1 - Unsorted9 trả về một đối tượng Python bao gồm các khóa của từ điển Điều này đặc biệt hữu ích khi bạn chỉ cần lặp lại các khóa của từ điển, nhưng nó cũng có thể được sử dụng kết hợp với toán tử lập chỉ mục để truy xuất các giá trị # METHOD 2 Phương pháp 3. Lặp lại bằng cách sử dụng. mặt hàng( )Tuy nhiên, cách "pythonic" và tao nhã nhất để lặp qua từ điển là sử dụng phương thức # METHOD 1 - Sorted0, phương thức này trả về dạng xem các mục của từ điển dưới dạng bộ dữ liệu print(transaction_data.items())Output[4]: Để lặp lại các khóa và giá trị của từ điển # METHOD 1 - Unsorted5, bạn chỉ cần 'giải nén' hai mục được nhúng trong bộ dữ liệu như hình bên dưới # METHOD 3 Lưu ý rằng k và v chỉ là bí danh tiêu chuẩn cho 'khóa' và 'giá trị', nhưng bạn cũng có thể chọn một quy ước đặt tên thay thế. Ví dụ: sử dụng a và b dẫn đến cùng một đầu ra for a,b in transaction_data.items(): Bổ sung - Lặp lại thông qua các từ điển lồng nhau 🤓Nhưng nếu bạn cần lặp qua một từ điển lồng nhau như # METHOD 1 - Sorted2 thì sao? transaction_data_n = { Để giải nén các cặp khóa-giá trị thuộc từng từ điển lồng nhau, bạn có thể sử dụng vòng lặp sau #1. Selecting key-value pairs for all the transactionsfor k, v in transaction_data_n.items():Làm thế nào để kiểm tra xem một khóa nhất định đã tồn tại trong từ điển chưa? Bạn có thể kiểm tra tư cách thành viên trong từ điển Python bằng toán tử # METHOD 1 - Sorted3 Cụ thể, giả sử bạn muốn kiểm tra xem trường # METHOD 1 - Sorted4 có sẵn làm khóa trong # METHOD 1 - Unsorted5 hay không. Trong trường hợp này, bạn có thể chạy ‘send_currency’ in transaction_data.keys()Output[9]: Tương tự như vậy, để kiểm tra xem giá trị # METHOD 1 - Sorted6 đã được gán cho một khóa trong từ điển hay chưa, bạn có thể chạy # METHOD 1 - Unsorted0 Tuy nhiên, việc kiểm tra ở trên sẽ không cho bạn biết ngay nếu # METHOD 1 - Sorted6 là giá trị được gán cho khóa # METHOD 1 - Sorted4 hay khóa # METHOD 1 - Sorted9. Để xác nhận điều đó, bạn có thể truyền một tuple cho phương thức # METHOD 20 # METHOD 1 - Unsorted1 Nếu từ điển # METHOD 1 - Unsorted5 bao gồm hàng trăm giá trị, thì đây sẽ là cách hoàn hảo để kiểm tra xem # METHOD 1 - Sorted6 có thực sự là # METHOD 1 - Sorted4 cho giao dịch cụ thể đó không tiện dụng. 😏😏😏 Làm cách nào để thêm một khóa mới vào từ điển?Cuối cùng, hãy giả sử rằng, tại một thời điểm nào đó, Nhóm Phân tích đã yêu cầu bạn thêm cả hai trường # METHOD 24 và # METHOD 25 vào dữ liệu có sẵn trong từ điển. Làm thế nào bạn sẽ đạt được điều đó? Có hai phương pháp chính
# METHOD 1 - Unsorted2
# METHOD 1 - Unsorted3Kết luận Trong bài viết này, tôi đã chia sẻ 3 phương pháp để lặp qua các từ điển Python với các vòng lặp 'for' và trích xuất các cặp khóa-giá trị một cách hiệu quả. Tuy nhiên, hãy lưu ý rằng thậm chí còn tồn tại nhiều giải pháp 'pythonic' hơn ( i. e. hiểu từ điển) Mặc dù là một chủ đề tương đối cơ bản, nhưng “làm thế nào để lặp qua từ điển Python?”, là một trong những câu hỏi được bình chọn nhiều nhất từng được hỏi trên Stack Overflow Vì lý do này, tôi cũng đã trả lời hai câu hỏi Stack Overflow cực kỳ phổ biến khác về việc kiểm tra tư cách thành viên và thêm các cặp khóa-giá trị mới vào từ điển Python Tôi hy vọng rằng bạn sẽ sử dụng bài viết này để làm sáng tỏ tất cả những nghi ngờ của bạn về từ điển ở cùng một nơi. Học lập trình rất thú vị và sẽ thay đổi cuộc đời bạn mãi mãi, vì vậy hãy tiếp tục học Lưu ý dành cho độc giả của tôiBài đăng này bao gồm các liên kết liên kết mà tôi có thể kiếm một khoản hoa hồng nhỏ mà không phải trả thêm phí cho bạn, nếu bạn mua hàng Làm cách nào để truy cập các giá trị từ điển trong Python bằng vòng lặp for?Trong Python, để lặp từ điển ( dict ) bằng vòng lặp for, sử dụng các phương thức keys() , values() , items(). You can also get a list of all keys and values in the dictionary with those methods and list() . Use the following dictionary as an example. You can iterate keys by using the dictionary object directly in a for loop.
Cách thêm khóaVí dụ. . # Lấy đầu vào để thêm khóa. giá trị vào từ điển hiện có theo cách chức năng # Tạo một lớp từ điển lớp my_dict(dict) # hàm __init__ def __init__(bản thân) tự = dict() # Chức năng thêm khóa. giá trị thêm def (bản thân, khóa, giá trị) Làm cách nào để gán giá trị danh sách cho từ điển trong Python?Để chuyển đổi danh sách thành từ điển sử dụng các giá trị giống nhau, bạn có thể sử dụng lệnh. phương thức fromkeys() . Để chuyển đổi hai danh sách thành một từ điển, bạn có thể sử dụng hàm zip() của Python. Khả năng hiểu từ điển cho phép bạn tạo một từ điển mới dựa trên các giá trị của danh sách.
Làm cách nào để tạo từ điển trong vòng lặp Python?Từ điển Python với vòng lặp For . Để lặp lại tất cả các mục chính tả, bạn sẽ cần trái cây. mặt hàng() Để tạo một danh sách lặp lại mỗi phím N lần, hãy làm. [phím]*N Vì các giá trị chính tả cho biết số lần lặp lại, hãy làm. [giá trị cốt lõi |