表格过滤,isin,使用数组的疑问
-
使用背景:
CSV 表格中,要对 “人员名称” 进行过滤,由于筛选人员数量较多,大概 20-30 人,而且人员经常变化,如果使用 [表格过滤] 组件属实的’==’,会不利于编辑及日常修改。所以我设想读取 Excel 中的人员一列作为筛选条件,转换成数组 li,并使用 isin 进行匹配。 -
遇到问题:
1、系统运行报错: TypeError: unhashable type: ‘list’
网查资料,说是 Python 不支持 dict 的 key 为 list 或 dict 类型,因为 list 和 dict 类型是 unhashable(不可哈希)的;
2、于是我将数组 li 转为 tuple 类型,但还是运行出错。
小白一名,望指点,谢谢
你的列表是一个二维结构,肯定不能拿单值和列表比较对吧(二维列表的子元素还是一个列表),如果改为一维列表是没问题的,我经常这样使用, ‘A 列名称’ isin [‘A’,‘B’,‘C’]
set 集合不可变,所以里面不能包含可变类型 list,dict 的 key 也是不可变的不能使用 list 但 value 可以使用 list