Hướng dẫn nested dictionary lookup python - python tra cứu từ điển lồng nhau
Tôi có 2 tệp CSV: 'Dữ liệu' và 'ánh xạ':
Tôi biết cách sử dụng dict khi chỉ có 2 cột (cần phải ánh xạ 1 cột) nhưng tôi không biết cách thực hiện điều này khi 3 cột cần được ánh xạ. Sau đây là mã sử dụng mà tôi đã cố gắng thực hiện ánh xạ 2:
Nó trả lại 0.Sau một số nghiên cứu, tôi nghĩ rằng tôi cần tạo ra một tài sản lồng nhau, nhưng tôi không biết làm thế nào để làm điều này. SMCI 30.5K18 Huy hiệu vàng110 Huy hiệu bạc145 Huy hiệu đồng18 gold badges110 silver badges145 bronze badges Đã hỏi ngày 2 tháng 5 năm 2013 lúc 8:14May 2, 2013 at 8:14 4 Một tài sản lồng nhau là một từ điển trong một từ điển. Một điều rất đơn giản.
Bạn cũng có thể sử dụng 1 từ gói 2 để tạo điều kiện tạo từ điển lồng nhau.
Bạn có thể điền vào đó tuy nhiên bạn muốn. Tôi muốn giới thiệu trong mã của bạn một cái gì đó như sau:
Theo bình luận của bạn:
Đề xuất của tôi sẽ là một cái gì đó như thế này (mà không sử dụng DefaultDict):
Mặc dù vậy, xin lưu ý rằng để phân tích các tệp CSV, có một mô -đun CSV. Đã trả lời ngày 2 tháng 5 năm 2013 lúc 8:24May 2, 2013 at 8:24 Inbar Roseinbar RoseInbar Rose 39,7K24 Huy hiệu vàng82 Huy hiệu bạc128 Huy hiệu đồng24 gold badges82 silver badges128 bronze badges 1 Cập nhật: Để có độ dài tùy ý của một từ điển lồng nhau, hãy đi đến câu trả lời này.: For an arbitrary length of a nested dictionary, go to this answer. Sử dụng chức năng DefaultDICT từ các bộ sưu tập. Hiệu suất cao: "Nếu khóa không trong Dict" rất tốn kém khi tập dữ liệu lớn. Bảo trì thấp: Làm cho mã dễ đọc hơn và có thể dễ dàng mở rộng.
Đã trả lời ngày 7 tháng 12 năm 2015 lúc 20:22Dec 7, 2015 at 20:22 JunchenjunchenJunchen 1.7192 huy hiệu vàng18 Huy hiệu bạc25 Huy hiệu đồng2 gold badges18 silver badges25 bronze badges 3 Đối với các cấp độ của Nestness tùy ý:
Đã trả lời ngày 30 tháng 3 năm 2016 lúc 4:18Mar 30, 2016 at 4:18 Andrewandrewandrew 1.77319 huy hiệu bạc18 Huy hiệu đồng19 silver badges18 bronze badges 1 Điều quan trọng cần nhớ khi sử dụng các mô -đun DicticTict và các mô -đun lồng nhau tương tự như Dưới đây là một ví dụ Python3 với mô -đun 3:
Đầu ra là:
SMCI 30.5K18 Huy hiệu vàng110 Huy hiệu bạc145 Huy hiệu đồng18 gold badges110 silver badges145 bronze badges Đã hỏi ngày 2 tháng 5 năm 2013 lúc 8:14Mar 3, 2017 at 20:26 Một tài sản lồng nhau là một từ điển trong một từ điển. Một điều rất đơn giản.Gerard G Bạn cũng có thể sử dụng
0References:
Theo bình luận của bạn:Apr 20, 2021 at 10:06 Có thể ở trên mã đang gây nhầm lẫn câu hỏi. Vấn đề của tôi trong Nutshell: Tôi có 2 tệp A.CSV B.CSV, A.CSV có 4 cột I J K L, B.CSV cũng có các cột này. Tôi là loại cột chính cho các CSV này '. Cột J K L trống trong a.csv nhưng dân cư trong B.CSV. Tôi muốn ánh xạ các giá trị của các cột j kXerCis Đề xuất của tôi sẽ là một cái gì đó như thế này (mà không sử dụng DefaultDict):5 silver badges4 bronze badges Mặc dù vậy, xin lưu ý rằng để phân tích các tệp CSV, có một mô -đun CSV. 1Example: 2Đã trả lời ngày 2 tháng 5 năm 2013 lúc 8:24Oct 7, 2020 at 12:10 Inbar Roseinbar Roseconmak 39,7K24 Huy hiệu vàng82 Huy hiệu bạc128 Huy hiệu đồng8 silver badges13 bronze badges
3Sử dụng chức năng DefaultDICT từ các bộ sưu tập. 4Hiệu suất cao: "Nếu khóa không trong Dict" rất tốn kém khi tập dữ liệu lớn. Bảo trì thấp: Làm cho mã dễ đọc hơn và có thể dễ dàng mở rộng. Đã trả lời ngày 7 tháng 12 năm 2015 lúc 20:22Jan 11, 2021 at 8:38 JunchenjunchenShah Vipul 1.7192 huy hiệu vàng18 Huy hiệu bạc25 Huy hiệu đồng4 silver badges9 bronze badges 5Đối với các cấp độ của Nestness tùy ý: Đã trả lời ngày 30 tháng 3 năm 2016 lúc 4:18Mar 10, 2021 at 14:44 64b0 Andrewandrew30 gold badges92 silver badges137 bronze badges 1.77319 huy hiệu bạc18 Huy hiệu đồngMar 26, 2021 at 8:47 1 Điều quan trọng cần nhớ khi sử dụng các mô -đun DicticTict và các mô -đun lồng nhau tương tự như 3, việc tìm kiếm một khóa không tồn tại có thể vô tình tạo ra một mục nhập khóa mới trong Dict và gây ra nhiều sự tàn phá. 7 8Dưới đây là một ví dụ Python3 với mô -đun 3: 9Đầu ra là:Mar 8 at 17:12 edd313edd313edd313 Đã trả lời ngày 3 tháng 3 năm 2017 lúc 20:264 silver badges12 bronze badges |