有一个列表li1 = ["张三", "王五","坤哥","李四", "赵六", "坤哥","王五","坤哥","张三","坤哥"] ,将列表重复的数据删除,保留一个,不可以使用集合
时间: 2023-09-14 16:08:00 浏览: 62
可以使用循环和判断来实现:
li1 = ["张三", "王五","坤哥","李四", "赵六", "坤哥","王五","坤哥","张三","坤哥"]
new_li = [] # 新建一个空列表用于存放去重后的数据
for item in li1: # 遍历原列表中的每个元素
if item not in new_li: # 判断当前元素是否已经存在于新列表中
new_li.append(item) # 如果不存在,则将其添加到新列表中
print(new_li) # 输出去重后的列表
相关问题
pandas 一个list里面有张三,李四,王五,赵六,怎么删除张三和赵六
可以使用 Pandas 中的 `drop()` 方法来删除列表中的指定元素。下面是一个 Python 代码示例:
```python
import pandas as pd
# 原始列表
lst = ['张三', '李四', '王五', '赵六']
# 转化为 Pandas Series 对象
s = pd.Series(lst)
# 删除指定元素
s = s.drop([0, 3])
# 输出结果
print(s.tolist()) # ['李四', '王五']
```
在上面的代码中,首先将原始列表转化为 Pandas Series 对象。然后使用 `drop()` 方法,传入要删除的元素的下标,即可删除指定元素。最后将处理后的 Series 对象转化为列表并输出。注意,Pandas 中的下标是从 0 开始计数的。
String str = "张三,李四,李四,王五,张三,李四";怎么用stream流统计每个人的名字出现的次数
在Java中,你可以使用`String`数组或列表,并结合`Stream` API 和 `Collectors.groupingBy`以及`Collectors.counting`来统计名字出现的次数。这里是一个例子:
```java
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
String namesStr = "张三,李四,李四,王五,张三,李四";
List<String> names = Arrays.asList(namesStr.split(","));
Map<String, Long> nameCountMap = names.stream()
.collect(Collectors.groupingBy(name -> name, Collectors.counting()));
// 输出每个名字及其出现次数
for (Map.Entry<String, Long> entry : nameCountMap.entrySet()) {
System.out.println("名字:" + entry.getKey() + ", 出现次数:" + entry.getValue());
}
}
}
```
在这个代码里,首先将字符串按照逗号分割成`List<String>`,然后通过`stream()`创建一个流,`groupingBy`函数根据名字对元素进行分组,并计算每个组的数量。最后遍历`nameCountMap`,打印出每个名字及其出现次数。