Python复习题目
时间: 2024-12-31 09:36:17 浏览: 11
### Python 复习练习题
#### 一、选择题
1. 下列哪一项不是Python的特点?
A. 易于学习
B. 开源免费
C. 编译型语言
D. 可移植性强
2. 关于Python中的元组,下列说法错误的是?[^2]
A. 元组一旦创建就不能修改其内容
B. 使用`tuple()`函数可以从字符串或列表转换成元组
C. 所有数据类型都可以通过`tuple()`直接转为元组
D. 创建后的元组可以通过索引访问其中的元素
3. `print('Hello' * 3)` 的输出结果是什么?
A. HelloHelloHello
B. HelloWorldWorldWorld
C. Hello*3
D. 出错
4. 列表`list = ['a', 'b', 'c']` 中,如何获取最后一个元素?
A. list[-1]
B. list[end()]
C. list[last()]
D. list[3]
5. 字典`dict = {'name': 'Alice', 'age': 20}`中,删除键名为'name'的方法是?
A. del dict['name']
B. remove(dict,'name')
C. pop(dict,'name')
D. delete(dict,'name')
#### 二、编程题
1. **计算斐波那契数列**
定义一个函数来生成指定长度n的斐波那契序列,并打印出来。
```python
def fibonacci(n):
fib_sequence = []
a, b = 0, 1
while n > 0:
fib_sequence.append(b)
a, b = b, a + b
n -= 1
return fib_sequence
print(fibonacci(10))
```
2. **统计字符频率**
输入一段文字,编写程序统计并输出每个字母出现次数最多的前三个字母及其对应的频次。(忽略大小写)
```python
from collections import Counter
text = input("请输入一段话:")
lower_text = text.lower()
letter_counts = Counter([char for char in lower_text if char.isalpha()])
top_three_letters = letter_counts.most_common(3)
print(top_three_letters)
```
3. **文件读取与处理**
将给定路径下的文本文件按行读入内存,去除每行首尾空白符后存入新的列表;最后遍历新列表逐行显示去掉空格的结果。
```python
file_path = './example.txt'
cleaned_lines = []
with open(file_path, encoding='utf-8') as f:
lines = f.readlines()
for line in lines:
stripped_line = line.strip() # 去除首尾空白符
if stripped_line: # 排除非空行
cleaned_lines.append(stripped_line)
for clean_line in cleaned_lines:
print(clean_line)
```
阅读全文