use*_*823 0 python string join append mysql-python
我想知道在避免重复的同时创建列表的最佳方法是什么.
我在mysql中有一些数据包含产品类型.
例如:
id ------- category
1 -------- food, drink, vege
2 -------- food, drink
3 -------- vege, baby goods
4 -------- fish
Run Code Online (Sandbox Code Playgroud)
我瞄准的输出是:
['food','drink','vege','baby goods','fish']
Run Code Online (Sandbox Code Playgroud)
(请注意订单对我来说无关紧要)
数据集有超过40,000条记录,因此手动检查肯定不是一种选择......
如果你能给我一个说明或建议,我将不胜感激.
Python集不允许重复.因此,您可以使用set comprehension构建一组唯一的类别,就像这样
unique_categories = {item.strip() for row in cur for item in row[1].split(",")}
Run Code Online (Sandbox Code Playgroud)
例如,
a = "food, drink, vege"
print {item.strip() for item in a.split(",")}
Run Code Online (Sandbox Code Playgroud)
产量
set(['food', 'drink', 'vege'])
Run Code Online (Sandbox Code Playgroud)
您可以像列表一样迭代集合.但是,如果您想稍后将其转换为列表,则可以使用list此类函数
unique_categories = list(unique_categories)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |