使用字典dt存放从控制台输入的学生姓名、性别、身高,将男生中身高超过170的学生姓名输出来,其中有多处错误 1 dt = {} 2it='1' 3 while it != '1': 4 name =input("请录入姓名") 5 high =input("请录入身高") 6 dt[“name” ]=high| 7 it=input("是否结束?0-结束,1-继续") 8 res =map(lambda item :item[1], dt) 9 for tp in res: 10 print(tp) 11 第 行有错,改为 第 行有错,改为 第 行有错,改为 第 行有错,改为 第 行有错,改为
时间: 2023-06-25 20:06:44 浏览: 59
以下是修改后的代码:
```python
dt = {}
it = '0' # 将it初始值设为'0',以便进入循环
while it != '1':
name = input("请录入姓名:")
gender = input("请录入性别:")
high = int(input("请录入身高:")) # 将录入的身高转换为整型
dt[name] = (gender, high) # 将性别和身高存放在元组中,并以姓名为键存放在字典dt中
it = input("是否结束?0-结束,1-继续:")
for name, (gender, high) in dt.items(): # 遍历字典dt中的元素
if gender == '男' and high > 170: # 如果是男生并且身高大于170,则输出姓名
print(name)
```
修改后的代码解释:
1. 将字典dt用来存放学生姓名、性别、身高,姓名作为键,性别和身高存放在元组中。
2. 将it的初始值设为'0',以便进入循环。
3. 将录入的身高转换为整型,方便后面比较大小。
4. 将录入的性别和身高存放在元组中,并以姓名为键存放在字典dt中。
5. 在循环中,判断是否继续录入信息,直到输入'1'才退出循环。
6. 遍历字典dt中的元素,如果是男生并且身高大于170,则输出姓名。
相关问题
编写程序,使用两种dict方式创建学生信息字典,包含学生姓名,学号,性别,身高
1.使用普通的dict方式创建学生信息字典:
student_dict = {
"张三": {
"学号": "2021001",
"性别": "男",
"身高": 178
},
"李四": {
"学号": "2021002",
"性别": "女",
"身高": 165
},
"王五": {
"学号": "2021003",
"性别": "男",
"身高": 180
}
}
2.使用collections模块中的defaultdict方式创建学生信息字典:
from collections import defaultdict
student_dict = defaultdict(dict)
student_dict["张三"]["学号"] = "2021001"
student_dict["张三"]["性别"] = "男"
student_dict["张三"]["身高"] = 178
student_dict["李四"]["学号"] = "2021002"
student_dict["李四"]["性别"] = "女"
student_dict["李四"]["身高"] = 165
student_dict["王五"]["学号"] = "2021003"
student_dict["王五"]["性别"] = "男"
student_dict["王五"]["身高"] = 180
以上两种方式都可以创建包含学生姓名、学号、性别、身高的学生信息字典。
编写程序,用zip方式创建学生信息字典,包含学生姓名,学号,性别,身高
,体重等信息。你可以使用Python编写这个程序,以下是示例代码:
```
import zipfile
# 创建学生信息字典
student_dict = {
'001': {'name': '张三', 'gender': '男', 'height': 175, 'weight': 65},
'002': {'name': '李四', 'gender': '女', 'height': 160, 'weight': 50},
'003': {'name': '王五', 'gender': '男', 'height': 180, 'weight': 75}
}
# 将字典导出为文本文件
with open('students.txt', 'w') as f:
for std_id, std_info in student_dict.items():
f.write(f'{std_id},{std_info["name"]},{std_info["gender"]},{std_info["height"]},{std_info["weight"]}\n')
# 将文本文件压缩为 zip 文件
with zipfile.ZipFile('students.zip', 'w') as z:
z.write('students.txt')
```
以上代码首先定义了一个学生信息字典,包括三个学生的学号、姓名、性别、身高和体重等基本信息。然后将这个字典导出为文本文件,每行一个学生信息,使用逗号分隔不同字段。最后使用 Python 自带的 zipfile 模块将文本文件压缩为 zip 文件。
相关推荐
![](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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)