2021年高中信息技术学考Python操作试题(6套全解)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2021年高中信息技术学考Python操作试
题(6套全解)
试题一:Python基础语法
题目描述
编写一个Python程序,实现以下功能:
1. 输入一个字符串,输出字符串中字母和数字的个数;
2. 输入一个整数,输出它的阶乘。
输入格式
第一行输入一个字符串,第二行输入一个整数。
输出格式
第一行输出字符串中字母和数字的个数,第二行输出整数的阶乘。
示例
输入:
hello123
5
输出:
3
120
解答
读取输入
s = input()
n = int(input())
计算字母和数字的个数alpha_count = sum(c.isalpha() for c in s) digit_count = sum(c.isdigit() for c in s)
计算阶乘
factorial = 1
for i in range(1, n + 1):
factorial *= i
输出结果
print(alpha_count + digit_count)
print(factorial)
试题二:Python列表操作
题目描述
编写一个Python程序,实现以下功能:
1. 输入一个整数列表,输出列表中最大值和最小值;
2. 输入一个字符串,将字符串中的每个字符转换为大写。
输入格式
第一行输入一个整数列表,第二行输入一个字符串。
输出格式
第一行输出列表中最大值和最小值,第二行输出字符串中的大写字符。
示例
输入:
[1, 2, 3, 4, 5]
hello
输出:
5 1
HELLO
解答
读取输入
nums = list(map(int, input().split()))
s = input()
计算最大值和最小值
max_val = max(nums)
min_val = min(nums)
将字符串中的每个字符转换为大写upper_s = s.upper()
输出结果
print(max_val, min_val)
print(upper_s)
试题三:Python函数应用
题目描述
编写一个Python程序,实现以下功能:
1. 定义一个函数,计算两个数的最大公约数;
2. 定义一个函数,计算两个数的乘积;
3. 输入两个整数,输出它们的最大公约数和乘积。
输入格式
第一行输入两个整数,用空格分隔。
输出格式
第一行输出两个整数的最大公约数,第二行输出它们的乘积。
示例
输入:
24 36
输出:
12
864
解答
定义函数计算最大公约数
def gcd(a, b):
while b:
a, b = b, a % b
return a
定义函数计算乘积
def multiply(a, b):
return a * b
读取输入
nums = list(map(int, input().split()))
调用函数计算最大公约数和乘积g = gcd(nums[0], nums[1])
m = multiply(nums[0], nums[1])
输出结果
print(g)
print(m)
试题四:Python文件操作
题目描述
编写一个Python程序,实现以下功能:
1. 读取一个文本文件,统计其中单词的数量;
2. 读取一个文本文件,统计其中句子的数量。
输入格式
无输入。
输出格式
第一行输出单词数量,第二行输出句子数量。
示例
输入:
hello world
this is a test
输出:
2
2
解答
定义函数统计单词数量
def count_words(file_path):
with open(file_path, 'r') as f:
content = f.read()
words = content.split()
return len(words)
定义函数统计句子数量
def count_sentences(file_path):
with open(file_path, 'r') as f:
content = f.read()
sentences = content.split('.')
return len(sentences)
调用函数统计单词和句子数量word_count = count_words('text.txt') sentence_count = count_sentences('text.txt')
输出结果
print(word_count)
print(sentence_count)
试题五:Python模块应用
题目描述
编写一个Python程序,实现以下功能:
1. 使用`math`模块计算两个数的最大公约数;
2. 使用`datetime`模块获取当前日期和时间;
3. 输入两个整数,输出它们的最大公约数和当前日期时间。
输入格式
第一行输入两个整数,用空格分隔。
输出格式
第一行输出两个整数的最大公约数,第二行输出当前日期时间。
示例
输入:
24 36
输出:
12
2021-01-01 12:00:00
解答
导入模块
import math
from datetime import datetime
定义函数计算最大公约数def gcd(a, b):
return math.gcd(a, b)
获取当前日期时间
now = datetime.now()
读取输入
nums = list(map(int, input().split()))
调用函数计算最大公约数和获取当前日期时间
g = gcd(nums[0], nums[1])
d = now.strftime('%Y-%m-%d %H:%M:%S')
输出结果
print(g)
print(d)
试题六:Python数据分析
题目描述
编写一个Python程序,实现以下功能:
1. 读取一个文本文件,统计其中每个单词的出现次数;
2. 输入一个整数,输出它的阶乘。
输入格式
第一行输入一个整数,第二行输入文本文件路径。
输出格式
第一行输出整数的阶乘,第二行输出单词出现次数的排序结果。
示例
输入:
5
text.txt
输出:
120
['hello': 2, 'world': 1, 'this': 1, 'is': 1, 'a': 1, 'test': 1]
解答
定义函数计算阶乘
def factorial(n):
if n == 0:
return 1
return n * factorial(n - 1)
定义函数统计单词出现次数def count_words(file_path):
with open(file_path, 'r') as f:
content = f.read()
words = content.split()
word_count = {}
for word in words:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
return word_count
读取输入
n = int(input())
file_path = input()
调用函数计算阶乘和统计单词出现次数fact = factorial(n)
word_count = count_words(file_path)
输出结果
print(fact)
print(sorted(word_count.items(), key=lambda x: x[1], reverse=True))。