删除集合中姓王的同学
时间: 2023-11-27 10:53:43 浏览: 28
假设集合为students,每个同学的信息用字典表示,其中包含姓名(name)和其他信息,可以使用以下代码删除姓王的同学:
```
students = [
{'name': '王小明', 'age': 18, 'gender': '男'},
{'name': '李小红', 'age': 20, 'gender': '女'},
{'name': '张大伟', 'age': 19, 'gender': '男'},
{'name': '王建国', 'age': 21, 'gender': '男'}
]
students = [student for student in students if not student['name'].startswith('王')]
print(students)
```
输出结果为:
```
[{'name': '李小红', 'age': 20, 'gender': '女'}, {'name': '张大伟', 'age': 19, 'gender': '男'}]
```
可以看到,集合中姓王的同学已经被删除。
相关问题
在persons数据集合中,给姓”王”的同学追加一本“语文” 书籍;
好的,根据您的要求,我可以使用以下代码实现:
```python
# 导入pandas库
import pandas as pd
# 读取persons数据集合
data = pd.read_csv('persons.csv')
# 根据姓名筛选出姓"王"的同学
wang_data = data[data['姓名'].str.startswith('王')]
# 添加一本"语文"书籍
wang_data.loc[wang_data.index[0], '书籍'] = '语文'
# 将修改后的数据保存到原文件
data.to_csv('persons.csv', index=False)
```
这段代码会将姓名以“王”开头的同学中的第一位同学的书籍属性修改为“语文”,并且将修改后的数据保存到原文件中。注意,如果原文件中有多位姓“王”的同学,这段代码只会修改第一位同学的数据。
删除集合中的某个元素
对于删除集合中的某个元素,可以使用以下几种方法:
1. 利用Iterator自带的remove方法进行删除。通过迭代器遍历集合,当找到要删除的元素时,使用迭代器的remove方法进行删除。这种方法可以避免并发修改异常。
2. 使用for循环倒序删除。从集合的最后一个元素开始遍历,当找到要删除的元素时,使用集合的remove方法进行删除。这种方法可以保证删除的元素不会影响后续元素的索引。
3. 使用Lambda表达式删除。使用流的forEach方法遍历集合,当找到要删除的元素时,将其添加到一个新的集合中,然后使用集合的removeAll方法将新集合中的元素全部从原集合中删除。
以下是示例代码:
```
// 方法一:利用Iterator自带的remove方法进行删除
public static void iterator(ArrayList<Long> list) {
Iterator<Long> it = list.iterator();
while (it.hasNext()) {
Long a = it.next();
if (a == 3) {
it.remove();
}
}
System.out.println(list);
}
// 方法二:for循环倒序删除
public static void backDel(ArrayList<Long> list) {
for (int i = list.size() - 1; i >= 0; i--) {
if (list.get(i) == 3) {
list.remove(i);
}
}
System.out.println(list);
}
// 方法三:Lambda表达式删除
public static void lambda(ArrayList<Long> list) {
ArrayList<Long> delList = new ArrayList<>();
list.stream().forEach(vo -> {
if (vo == 3) {
delList.add(vo);
}
});
list.removeAll(delList);
System.out.println(list);
}
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)