二位列表li = [ ['儿童','cszlh','六亿'], ['儿童','cszlh','六亿'], ['儿童','cszlh','六亿'], ['儿童','cszlh2','六亿'], ['儿童','cszlh2','六亿'], ['儿童','cszlh2','六亿'], ]根据列表里面的列表的第二个元素判断去重得到列表[] ['儿童', 'cszlh', '六亿'], ['儿童', 'cszlh2', '六亿']]
时间: 2023-08-06 16:27:20 浏览: 24
你可以使用循环遍历列表的元素,然后判断列表的第二个元素是否已经出现过,如果没有出现过就加入到结果列表中,否则就跳过。具体代码如下:
```
li = [['儿童','cszlh','六亿'],
['儿童','cszlh','六亿'],
['儿童','cszlh','六亿'],
['儿童','cszlh2','六亿'],
['儿童','cszlh2','六亿'],
['儿童','cszlh2','六亿']]
result = []
for item in li:
if item[1] not in [x[1] for x in result]:
result.append(item)
print(result)
```
这里用到了列表推导式的语法,和not in的判断方式。最后得到的result是一个只包含去重后元素的列表。
相关问题
二位列表li = [ ['儿童','cszlh','六亿'], ['儿童','cszlh','六亿'], ['儿童','cszlh','六亿'], ['儿童','cszlh2','六亿'], ['儿童','cszlh2','六亿'], ['儿童','cszlh2','六亿'], ]根据列表里面的以为列表的第二个元素判断去重
你可以使用set()和列表推导式来去重。具体代码如下:
```
li = [['儿童','cszlh','六亿'],
['儿童','cszlh','六亿'],
['儿童','cszlh','六亿'],
['儿童','cszlh2','六亿'],
['儿童','cszlh2','六亿'],
['儿童','cszlh2','六亿']]
new_li = [list(x) for x in set(tuple(x[1] for x in li))]
```
这里用到了set()的去重功能,以及列表推导式的语法。最后得到的new_li是一个只包含去重后元素的列表。
用 random库 从列表li=[1,10]中随机获取一个整数:
可以使用 `random.randint(a, b)` 方法从列表 `li=[1,10]` 中随机获取一个整数,其中 `a` 和 `b` 分别是列表的起始和结束位置(包括两个位置),如下所示:
```python
import random
li = [1, 10]
random_int = random.randint(li[0], li[1])
print(random_int)
```
这段代码会输出一个在 `1` 到 `10` 之间的随机整数。