跳至主要內容

爬虫2

AI悦创原创大约 5 分钟...约 1452 字

一. 程序题(共20题,100分)

1. (程序题)定义函数计算水费

定义函数,计算水费。某地按照年度用水量,对水费实行阶梯计费:

用水量不超过 180 立方米,水价为 5 元/立方米;用水量在 181~260 立方米,水价为 7 元/立方米;用水量超过 260 立方米,水价为 9 元/立方米。

使用 input 语句输入用水量(整数),然后调用该函数计算阶梯水费并输出计算结果。

输入示例: 200 输出示例: 1040

def calculate_water_bill(water_usage):
    if water_usage <= 180:
        return water_usage * 5
    elif water_usage <= 260:
        return 180 * 5 + (water_usage - 180) * 7
    else:
        return 180 * 5 + 80 * 7 + (water_usage - 260) * 9

# Example input
water_usage = 200
# Calculate and print the bill
bill = calculate_water_bill(water_usage)
print(bill)

2. 定义函数求 n 的阶乘

定义函数,求 n 的阶乘,默认 n=10。调用该函数,分别计算 5 和 10 的阶乘并输出计算结果(使用2条输出语句)。

输入示例: 无

输出示例: 1203628800

# 定义求阶乘的函数
def factorial(n=10):
    if n == 0 or n == 1:
        return 1
    else:
        return n * factorial(n-1)

# 调用函数计算5和10的阶乘
factorial_5 = factorial(5)
factorial_10 = factorial(10)

print(factorial_5, factorial_10)

3. 利用 Lambda 表达式实现排序功能

有以下水果价格字典,使用lambda表达式,按价格从高到低对字典排序,并输出排序结果。

{'apple': 12.6, 'grape': 21.0, 'orange': 8.8, 'banana': 10.8, 'pear': 6.5}

输入示例: 无

输出示例: [('grape', 21.0), ('apple', 12.6), ('banana', 10.8), ('orange', 8.8), ('pear', 6.5)]

# 定义水果价格字典
fruits = {'apple': 12.6, 'grape': 21.0, 'orange': 8.8, 'banana': 10.8, 'pear': 6.5}

# 使用lambda表达式对字典按价格从高到低排序
sorted_fruits = sorted(fruits.items(), key=lambda item: item[1], reverse=True)

print(sorted_fruits)

4. 交换两个数

交换两个数使用 input 语句分别输入两个数,然后交换两个数的值,并输出交换结果。

输入示例:

4

3

输出示例:4 3

a = int(input())
b = int(input())

a, b = b, aa = int(input())
b = int(input())

a, b = b, a

print(a, b)

print(a, b)

5. 构建列表推导式并统计数量

利用循环语句,依次从键盘输入 6 个整数,并添加到列表 nums 中。然后,完成下列操作。

(1)使用列表推导式建立 3 个列表 pos_list、neg_list、zero_list 分别保存正数、负数和零。

(2)统计正数、负数和零的个数,并依次输出统计结果。输入示例:

输入示例:

3

-2

0

-5

10

15

输出示例:

3

2

1

# 创建一个空列表用于存储用户输入的整数
nums = []

# 提示用户输入 6 个整数,并添加到列表 nums 中
for _ in range(6):
    num = int(input("请输入一个整数:"))
    nums.append(num)

# 列表推导式分别生成正数列表、负数列表和零列表
pos_list = [num for num in nums if num > 0]
neg_list = [num for num in nums if num < 0]
zero_list = [num for num in nums if num == 0]

# 分别统计正数、负数和零的个数
pos_count = len(pos_list)
neg_count = len(neg_list)
zero_count = len(zero_list)

# 输出统计结果
print(pos_count)
print(neg_count)
print(zero_count)

6. 求 1~100 内所有奇数之和

使用 while 循环加条件语句实现。

计算并输出1~100的奇数之和。

输入示例: 无

输出示例: 2500

# 初始化变量
num = 1  # 起始数字
sum_odd = 0  # 奇数和

# 使用 while 循环加条件语句计算1~100内所有奇数之和
while num <= 100:
    if num % 2 != 0:
        sum_odd += num
    num += 1

# 输出结果
print(sum_odd)

7. 温度统计

使用元组记录某地一周的最高温度和最低温度,统计这一周的最高温度、最低温度和每日平均温度,并依次输出统计结果。

最高温度:30, 28, 29, 31, 33, 35, 32

最低温度:20, 21, 19, 22, 23, 24, 20

输入示例: 无

输出示例:

35

19

[25.0, 24.5, 24.0, 26.5, 28.0, 29.5, 26.0]

# 定义一周的最高温度和最低温度
high_temps = (30, 28, 29, 31, 33, 35, 32)
low_temps = (20, 21, 19, 22, 23, 24, 20)

# 计算一周的最高温度
max_temp = max(high_temps)

# 计算一周的最低温度
min_temp = min(low_temps)

# 计算每日平均温度
average_temps = [(high + low) / 2 for high, low in zip(high_temps, low_temps)]

print(max_temp, min_temp, average_temps)

8. 列表排序

将 2 个列表 list1 和 list2 合并为一个列表 alist,并对 alist 降序排序。

list1 = [57, 71, 78, 73, 85, 90, 65, 87]

list2 = [78, 90, 68, 82, 71, 89, 93, 82]

输入示例: 无

输入示例: [93, 90, 90, 89, 87, 85, 82, 82, 78, 78, 73, 71, 71, 68, 65, 57]

# Given lists
list1 = [57, 71, 78, 73, 85, 90, 65, 87]
list2 = [78, 90, 68, 82, 71, 89, 93, 82]

# Merging and sorting the lists in descending order
alist = sorted(list1 + list2, reverse=True)
print(alist)

9. 定义函数查询价格

有以下水果价格字典,定义函数,可以同时查询多种水果的价格。调用该函数,显示查询结果。

{'apple': 12.6, 'grape': 21.0, 'orange': 8.8, 'banana': 10.8, 'pear': 6.5}

输入示例: 无

输出示例:

[('grape', 21.0)]

[('apple', 12.6), ('orange', 8.8)]

[('apple', 12.6), ('peach', -1), ('pear', 6.5)]

公众号:AI悦创【二维码】

AI悦创·编程一对一

AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Web、Linux」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh

C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh

方法一:QQopen in new window

方法二:微信:Jiabcdefh

上次编辑于:
贡献者: AndersonHJB
你认为这篇文章怎么样?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
评论
  • 按正序
  • 按倒序
  • 按热度