- Mastering Python
- Rick van Hattem
- 194字
- 2021-07-16 11:10:34
dict comprehensions
dict
comprehensions are very similar to list comprehensions, but the result is a dict
instead. Other than this, the only real difference is that you need to return both a key and a value, whereas a list
comprehension accepts any type of value. The following is a basic example:
>>> {x: x ** 2 for x in range(10)} {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81} >>> {x: x ** 2 for x in range(10) if x % 2} {1: 1, 3: 9, 9: 81, 5: 25, 7: 49}
The funny thing is that you can mix these two, of course, for even more unreadable magic:
>>> {x ** 2: [y for y in range(x)] for x in range(5)} {0: [], 1: [0], 4: [0, 1], 16: [0, 1, 2, 3], 9: [0, 1, 2]}
Obviously, you need to be careful with these. They can be very useful if used correctly, but the output quickly becomes unreadable, even with proper whitespace.
推薦閱讀
- Kibana Essentials
- Hands-On Image Processing with Python
- Learning Informatica PowerCenter 10.x(Second Edition)
- Apache Mesos Essentials
- Ext JS 4 Web Application Development Cookbook
- 用戶體驗增長:數字化·智能化·綠色化
- 劍指Java:核心原理與應用實踐
- SQL Server數據庫管理與開發兵書
- The Professional ScrumMaster’s Handbook
- Web前端應用開發技術
- C# Multithreaded and Parallel Programming
- 機器學習微積分一本通(Python版)
- Using Yocto Project with BeagleBone Black
- Python程序設計
- Learning Node.js for Mobile Application Development