DAY 3 列表、循环和判断语句

题目1:列表的基础操作

题目:

  1. 创建一个包含三个字符串元素的列表 tech_list,元素分别为 “Python”, “Java”, “Go”。
  2. 获取列表中的第一个元素,并将其存储在变量 first_tech 中。
  3. 向 tech_list 的末尾添加一个新的字符串元素 “JavaScript”。
  4. 修改 tech_list 中的第二个元素(索引为 1),将其从 “Java” 更改为 “Ruby”。
  5. 移除列表中的元素 “Go”。
  6. 计算当前 tech_list 的长度,并将结果存储在变量 current_length 中。
  7. 最后,使用 f-string 分三行打印出以下信息:
    1. 获取到的第一个技术名称。
    2. 列表当前的长度。
    3. 经过所有操作后,列表最终的内容。

打印格式应类似:

第一个技术是: Python
当前列表长度: 3
最终列表内容: [‘Python’, ‘Ruby’, ‘JavaScript’]

代码:

tech_list = ["Python", "Java", "Go"]
# 获取列表中的第一个元素
first_tech = tech_list[0]
# 在列表末尾添加一个新元素“JavaScript”
tech_list.append("JavaScript")
tech_list[1] = "Ruby"
# 移除列表中的元素“Go”
tech_list.remove("Go")
# 计算列表长度
current_length = len(tech_list)
# 打印结果
print(f"第一个技术名称:{first_tech}\n列表当前长度为:{current_length}")
print(f"最终列表所存内容为:{tech_list}")

输出:

第一个技术名称:Python
列表当前长度为:3
最终列表所存内容为:['Python', 'Ruby', 'JavaScript']
列表知识和函数:
  • 支持嵌套,相当于 “二维数组”

  • 元素下表索引从前往后:0 1 2 3 ...

  • 元素下表索引从后往前:-1 -2 -3...

  • 可容纳多个元素

  • 可容纳不同类型的元素

  • 数据有序存储(下标)

  • 允许重复数据

  • 可以修改

编号使用方式作用
1列表.append(元素)向列表中追加一个元素
2列表.extend(容器)将数据容器的内容依次取出,追加到列表尾部
3列表.insert(下标, 元素)在指定下标处,插入指定的元素
4del 列表[下标]删除列表指定下标元素
5列表.pop(下标)删除列表指定下标元素
6列表.remove(元素)从前向后,删除此元素第一个匹配项
7列表.clear()清空列表
8列表.count(元素)统计此元素在列表中出现的次数
9列表.index(元素)查找指定元素在列表的下标找不到报错ValueError
10len(列表)统计容器内有多少元素
11reverse()元素翻转

题目2:循环for语句

计算1+100的和 用for循环来写

代码:

sum = 0
for i in range(1, 101):
  sum += i
print(sum)

输出:

5050

注:

  • range(1, 101),从1依次取到100,类似左闭右开
  • sum += i 效果等同于 sum = sum + i

题目3:判断语句

温度预警系统

1. 定义一个变量temperature存储当前温度(整数)

2. 根据以下条件判断并打印预警信息:

   - 高于35度:打印"红色预警:高温天气!"

   - 27-35度:打印"黄色预警:天气炎热"

   - 20-27度:打印"绿色提示:适宜温度"

   - 低于20度:打印"蓝色预警:注意保暖"

3. 使用if-elif-else结构实现

4. 测试用例:用温度38测试你的代码

代码:

temperature = 38
if temperature < 20:
  print("蓝色预警:注意保暖!")
elif temperature >= 20 and temperature <27:
  print("绿色提示:适宜温度!")
elif temperature >=27 and temperature <35:
  print("黄色预警:天气炎热!")  
else:
  print("红色预警:高温天气!")

输出:

红色预警:高温天气!
注:

Python 中 if 判断的缩进本质是 代码块的作用域标识

- 与 if 关键字缩进层级相同的代码,不属于 if 执行体;
- 缩进更深一层的代码,属于 if 执行体(条件满足时执行);
- 缩进层级错误会导致语法错误或逻辑错误(如代码被错误地包含/排除在条件执行体外)。

题目4:判断循环综合案例
  1. 定义一个包含整数的列表 scores,赋值为 [85, 92, 78, 65, 95, 88]。
  2. 初始化两个变量:excellent_count 用于记录分数大于等于 90 的个数,初始值为 0;total_score 用于累加所有分数,初始值为 0。
  3. 使用 for 循环遍历 scores 列表中的每一个分数。
  4. 在循环内部:
    1. 将当前分数累加到 total_score 变量上。
    2. 使用 if 语句判断当前分数是否大于等于 90。如果是,则将 excellent_count 变量加 1。
  5. 循环结束后,计算平均分 average_score(总分除以分数的个数)。
  6. 使用 f-string 分三行打印出以下信息:
  7. 优秀分数(>=90)的个数。
  8. 所有分数的总和。
  9. 所有分数的平均分(结果包含3位小数)。

打印格式应类似:

优秀分数个数: 2
分数总和: 503
平均分数: 83.833

代码:

scores = [85, 92, 78, 65, 95, 88]
# 记录分数大于等于90的个数
excellent_count = 0
# 记录所有分数的总和
total_score = 0
for score in scores:
  total_score += score
  if score >= 90:
    excellent_count +=1
# 计算平均分    
average_score = total_score / len(scores)    
print(f"优秀分数(>=90)的个数:{excellent_count}\n所有分数的总和:{total_score}")
print(f"所有分数的平均分:{average_score:.3f}")

输出:

优秀分数(>=90)的个数:2
所有分数的总和:503
所有分数的平均分:83.833

注:格式化输出中保留小数使用“ :.3f ”

@浙大疏锦行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值