Python实操试题
Python实操试题
1.?基础语法与数据类型
a. 编写一个Python程序,要求用户输入名字并打印出"Hello, [输入的名字]!"。
b. 创建一个包含整数和字符串的列表,然后使用循环遍历并打印出每个元素。
2.?函数与模块
a. 定义一个函数,接受两个参数并返回它们的和。
b. 创建一个Python模块,包含一个计算平方的函数。
3.?文件操作
a. 创建一个文本文件(例如.txt),写入几行文字。
b. 编写一个程序,读取这个文本文件的内容并打印出来。
4.?异常处理
a. 编写一个程序,要求用户输入一个数字,然后尝试将其转换为整数。处理可能出现的异常情况。
b. 在同一个程序中添加一个文件读取功能,要求用户输入一个文件名,然后尝试打开并读取文件内容。处理可能出现的文件操作异常。
5.?面向对象编程
a. 创建一个名为Person的类,具有name和age属性。添加一个方法,用于打印出该人的信息。
b. 创建一个Student类,继承自Person,并添加一个额外的属性grade。覆盖父类的方法以包含学生的信息。
6.?列表推导式与Lambda函数
a. 使用列表推导式创建一个包含1到10之间偶数的列表。
b. 编写一个使用Lambda函数的程序,将输入的数字加倍。
7.?正则表达式
a. 编写一个程序,使用正则表达式从一段文本中提取所有的电子邮件地址。
b. 使用正则表达式验证用户输入的手机号码是否符合特定格式(例如,国际格式或国内格式)。
8.?网络请求与API
a. 使用requests库向一个公开的API发送GET请求,获取数据并打印出其中的一些信息。
b. 编写一个简单的Flask应用,包含一个路由,返回一个JSON格式的响应。
9.?并发与多线程
a. 创建两个线程,一个线程打印偶数,另一个线程打印奇数,确保交替打印。
b. 使用concurrent.futures模块实现一个简单的并发任务执行程序。
10.?测试
a. 编写一个简单的单元测试,测试一个自定义函数的正确性。
b. 使用unittest或其他测试框架编写一个测试类,测试一个包含多个方法的类的各个功能。
1.?基础语法与数据类型
对于代码性质的问题,无法直接执行和提供运行后的结果,但我可以给你示范一些答案供参考。
基础语法与数据类型
a. ```python name = input("请输入名字:") print(f"Hello, {name}!")
b.
```python
my_list = [1, 'two', 3.0, 'four']
for item in my_list:
print(item)
2.?函数与模块
A
def add_numbers(a, b):
return a + b
?B
# square_module.py
def calculate_square(num):
return num ** 2
3.?文件操作
with open('sample.txt', 'w') as file:
file.write("这是第一行\n这是第二行\n这是第三行\n")
# b
with open('sample.txt', 'r') as file:
content = file.read()
print(content)
4.?异常处理
A
try:
user_input = int(input("请输入一个数字:"))
print("输入的数字是:", user_input)
except ValueError:
print("请输入有效的数字!")
?B
try:
file_name = input("请输入文件名:")
with open(file_name, 'r') as file:
content = file.read()
print(content)
except FileNotFoundError:
print("文件不存在!")
except IOError:
print("无法读取文件!")
5.?面向对象编程
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def print_info(self):
print(f"姓名: {self.name}, 年龄: {self.age}")
# b
class Student(Person):
def __init__(self, name, age, grade):
super().__init__(name, age)
self.grade = grade
def print_info(self):
print(f"姓名: {self.name}, 年龄: {self.age}, 年级: {self.grade}")
6.?列表推导式与Lambda函数
A
even_numbers = [num for num in range(1, 11) if num % 2 == 0]
print(even_numbers)
?B
double = lambda x: x * 2
result = double(5)
print(result)
7.?正则表达式
A
import re
text = "Sample text with emails user1@example.com and user2@example.com"
emails = re.findall(r'\b[\w.-]+@[a-zA-Z]+\.[a-zA-Z]{2,}\b', text)
print(emails)
?B
import re
def validate_phone_number(number):
pattern = r'^\+?[0-9]{1,3}\s?[0-9]{3,}$'
if re.match(pattern, number):
return True
else:
return False
user_input = input("请输入手机号码:")
if validate_phone_number(user_input):
print("手机号码格式正确!")
else:
print("手机号码格式不正确!")
8.?网络请求与API
A
import requests
response = requests.get('https://jsonplaceholder.typicode.com/posts/1')
data = response.json()
print(data['title'])
?B
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/hello', methods=['GET'])
def hello():
return jsonify({"message": "Hello, World!"})
if __name__ == '__main__':
app.run(debug=True)
9.?并发与多线程
A
import threading
def print_even():
for i in range(2, 11, 2):
print(i)
def print_odd():
for i in range(1, 10, 2):
print(i)
t1 = threading.Thread(target=print_even)
t2 = threading.Thread(target=print_odd)
t1.start()
t2.start()
t1.join()
t2.join()
?B
import threading
def print_even():
for i in range(2, 11, 2):
print(i)
def print_odd():
for i in range(1, 10, 2):
print(i)
t1 = threading.Thread(target=print_even)
t2 = threading.Thread(target=print_odd)
t1.start()
t2.start()
t1.join()
t2.join()
10.?测试
A
def add(a, b):
return a + b
def test_add():
assert add(3, 4) == 7
assert add(-2, 2) == 0
assert add(0, 0) == 0
test_add()
B
import unittest
class TestStringMethods(unittest.TestCase):
def test_upper(self):
self.assertEqual('hello'.upper(), 'HELLO')
def test_isupper(self):
self.assertTrue('HELLO'.isupper())
self.assertFalse('Hello'.isupper())
if __name__ == '__main__':
unittest.main()
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!