已知集合List(("Lucy",18,"女"),("Jack",20,"男"),("David",17,"男"))包含学生的姓名,年龄,性别信息 1、按照格式”姓名:XX,年龄:XX,性别:XX”输出所有学生信息 2、使用转换算子统计已成年的学生人数
时间: 2023-09-02 22:05:37 浏览: 81
好的,我明白了。对于您的第一个问题,我可以给出以下代码:
```python
students = [("Lucy",18,"女"),("Jack",20,"男"),("David",17,"男")]
# 逐个遍历学生信息并格式化输出
for student in students:
print("姓名:{},年龄:{},性别:{}".format(student[0], student[1], student[2]))
```
以上代码输出结果为:
```
姓名:Lucy,年龄:18,性别:女
姓名:Jack,年龄:20,性别:男
姓名:David,年龄:17,性别:男
```
对于您的第二个问题,我可以给出以下代码:
```python
students = [("Lucy",18,"女"),("Jack",20,"男"),("David",17,"男")]
# 使用 filter 函数统计已成年学生的个数
adult_num = len(list(filter(lambda s: s[1] >= 18, students)))
print(adult_num)
```
以上代码输出结果为:
```
2
```
请注意,这里使用了 Python 内置的 `filter` 函数,对一个元组列表中的每个元组应用一个给定的函数。在本例中,我们使用 `lambda` 函数作为参数,判断每个元组的第二个元素(即年龄)是否大于等于 18。如果符合条件,就把它包含进一个新的列表里(`list()` 函数可以将 `filter` 函数的返回值转换为一个列表)。最后,我们调用 `len()` 函数计算新列表中元素的个数,即成年学生的个数。