Tôi có danh sách khá đơn giản: Show
Làm thế nào tôi có thể tổng hợp tất cả các giá trị vàng? Tôi đang tìm kiếm oneliner đẹp. Bây giờ tôi đang sử dụng mã này (nhưng nó không phải là giải pháp tốt nhất):
hỏi ngày 27 tháng 7 năm 2012 lúc 17:21Jul 27, 2012 at 17:21
Mateusz Jagiełłomateusz JagiełłoMateusz Jagiełło 6.61410 Huy hiệu vàng39 Huy hiệu bạc46 Huy hiệu đồng10 gold badges39 silver badges46 bronze badges 3
Đã trả lời ngày 27 tháng 7 năm 2012 lúc 17:22Jul 27, 2012 at 17:22
g.d.d.cg.d.d.cg.d.d.c 45.5K8 Huy hiệu vàng99 Huy hiệu bạc110 Huy hiệu Đồng8 gold badges99 silver badges110 bronze badges 0 Nếu bạn có ý thức về trí nhớ:
Nếu bạn cực kỳ có ý thức về thời gian:
Trong hầu hết các trường hợp chỉ cần sử dụng biểu thức máy phát, vì sự gia tăng hiệu suất chỉ đáng chú ý trên một dữ liệu rất lớn/đường dẫn mã rất nóng. Xem câu trả lời này để giải thích lý do tại sao bạn nên tránh sử dụng MAP. Xem câu trả lời này cho một số so sánh thời gian trong thế giới thực của danh sách hiểu và biểu thức tạo.
Đã trả lời ngày 27 tháng 7 năm 2012 lúc 19:16Jul 27, 2012 at 19:16
Ben Burnsben bị bỏngBen Burns Phù bằng vàng 14,8K4 Huy hiệu bạc56 Huy hiệu đồng4 gold badges33 silver badges56 bronze badges 2 Nếu bạn thích 5, điều này cũng hoạt động:
Nhưng tôi nghĩ rằng trình tạo được đăng bởi G.D.D.C tốt hơn đáng kể. Câu trả lời này thực sự chỉ để chỉ ra sự tồn tại của 6.Đã trả lời ngày 27 tháng 7 năm 2012 lúc 17:23Jul 27, 2012 at 17:23
Mgilsonmgilsonmgilson 291K63 Huy hiệu vàng610 Huy hiệu bạc677 Huy hiệu Đồng63 gold badges610 silver badges677 bronze badges 3
Bruno Mello 4.0991 Huy hiệu vàng7 Huy hiệu bạc33 Huy hiệu đồng1 gold badge7 silver badges33 bronze badges Đã trả lời ngày 24 tháng 2 lúc 0:58Feb 24 at 0:58
xmduhanxmduhanxmduhan 83011 Huy hiệu bạc14 Huy hiệu đồng11 silver badges14 bronze badges 1
đầu ra
Đã trả lời ngày 25 tháng 2 lúc 12:07Feb 25 at 12:07
Sư tử vàng vàngGolden Lion 3.2992 Huy hiệu vàng25 Huy hiệu bạc31 Huy hiệu Đồng2 gold badges25 silver badges31 bronze badges 1 Xây dựng vấn đề và tổng quan về giải phápTrong bài viết này, bạn sẽ học cách tổng hợp các giá trị từ điển trong Python.Sum Dictionary Values in Python. Để làm cho nó vui hơn, chúng tôi có kịch bản chạy sau: Là một freelancer Python, bạn muốn biết bạn đã kiếm được bao nhiêu tiền trong vài tháng qua. Dữ liệu này được lưu trữ trong một định dạng từ điển. Tổng số này có thể được tìm thấy bằng cách tổng hợp (kiểm đếm) các giá trị từ điển. 💬 Câu hỏi: Làm thế nào chúng ta sẽ viết mã Python để tổng hợp các giá trị từ điển trong Python?Question: How would we write Python code to sum dictionary values in Python? Chúng tôi có thể hoàn thành nhiệm vụ này bằng một trong các tùy chọn sau:
Phương pháp 1: Sử dụng sum () và dict.values ()Bạn có thể sử dụng các hàm 7 và 8 để tổng hợp tất cả các giá trị của từ điển Python với biểu thức 6.Ở đây, cách thức này áp dụng cho kịch bản ví dụ của chúng tôi: wages = {'01': 910.56, '02': 1298.68, '03': 1433.99, '04': 1050.14, '05': 877.67} total = sum(wages.values()) print('Total Wages: ${0:,.2f}'.format(total)) Mã này tuyên bố một từ điển, 7 chứa năm (5) khóa: các cặp giá trị của thu nhập hàng tháng.Tùy chọn 1 ở trên các giá trị được trích xuất và lưu vào 8. Then using
9, the output is modified to display a Dollar sign ( 0), a comma (if needed), and restrict the output to two (2) decimal places.Tổng số tiền lương: $ 5,571,04 HOẶC 0Tùy chọn 2 ở trên các giá trị được trích xuất, làm tròn kết quả đến hai (2) vị trí thập phân và tiết kiệm cho 8. The result is output to the terminal as is.5571.04 Phương thức từ điển python () Phương thức Phương pháp 2: Sử dụng biểu thức Sum () và Trình tạoBạn có thể kết hợp hàm 7 tích hợp với biểu thức máy phát đơn giản để tổng hợp tất cả các giá trị trong từ điển Python với biểu thức 3.Ở đây, ví dụ: 1Mã này tuyên bố một từ điển, 7 chứa năm (5) khóa: các cặp giá trị của thu nhập hàng tháng.Tùy chọn 1 ở trên các giá trị được trích xuất và lưu vào 8. Sau đó, sử dụng 9, đầu ra được sửa đổi để hiển thị dấu hiệu đô la ( 0), dấu phẩy (nếu cần) và hạn chế đầu ra ở hai (2) vị trí thập phân.Tổng số tiền lương: $ 5,571,04 Tổng số tiền lương: $ 5,571,04 HOẶCTùy chọn 2 ở trên các giá trị được trích xuất, làm tròn kết quả đến hai (2) vị trí thập phân và tiết kiệm cho 8. Kết quả là đầu ra cho thiết bị đầu cuối như là.Phương thức từ điển python () Phương thức 2Phương pháp 2: Sử dụng biểu thức Sum () và Trình tạo Bạn có thể kết hợp hàm 7 tích hợp với biểu thức máy phát đơn giản để tổng hợp tất cả các giá trị trong từ điển Python với biểu thức 3.Ở đây, ví dụ: 5571.04 Vòng lặp 3 một dòng được sử dụng để điều hướng từng mục từ điển (giá trị) và kiểm đếm các mục. Kết quả tiết kiệm đến 8.
Sau đó, sum(item['gold'] for item in myList) 9 được sử dụng để sửa đổi đầu ra để hiển thị dấu hiệu đô la (sum(item['gold'] for item in example_list) 0), dấu phẩy (nếu cần) và hạn chế đầu ra ở hai (2) vị trí thập phân.Phương pháp 3: Sử dụng Lambda 3Phương pháp 2: Sử dụng biểu thức Sum () và Trình tạo Bạn có thể kết hợp hàm 7 tích hợp với biểu thức máy phát đơn giản để tổng hợp tất cả các giá trị trong từ điển Python với biểu thức 3.Ở đây, ví dụ: Ở đây, ví dụ: 5571.04 Vòng lặp sum(item['gold'] for item in myList) 3 một dòng được sử dụng để điều hướng từng mục từ điển (giá trị) và kiểm đếm các mục. Kết quả tiết kiệm đến sum(item['gold'] for item in myList) 8.Sau đó, 9 được sử dụng để sửa đổi đầu ra để hiển thị dấu hiệu đô la ( 0), dấu phẩy (nếu cần) và hạn chế đầu ra ở hai (2) vị trí thập phân.Phương pháp 3: Sử dụng Lambda 4Một cách khác để tổng hợp các giá trị từ điển Python là sử dụng phương pháp 0 kết hợp với hàm LambDA trong biểu thức 0.Ở đây, những gì trông giống như trong kịch bản ví dụ của chúng tôi:Đầu tiên, mã này tuyên bố một từ điển, 7 chứa năm (5) khóa: các cặp giá trị của thu nhập hàng tháng.Sau đó, hàm 0 được sử dụng với Lambda để kiểm đếm tiền lương. Kết quả này tiết kiệm cho 8 và là đầu ra cho thiết bị đầu cuối như vậy.Đầu ra Hãy chơi Finxter - Chức năng Lambda trong Python Phương pháp 4: Sử dụng máy phát điện |