Python实操试题

2023-12-28 21:45:01

Python实操试题

1.?基础语法与数据类型

a. 编写一个Python程序,要求用户输入名字并打印出"Hello, [输入的名字]!"。

b. 创建一个包含整数和字符串的列表,然后使用循环遍历并打印出每个元素。

2.?函数与模块

a. 定义一个函数,接受两个参数并返回它们的和。

b. 创建一个Python模块,包含一个计算平方的函数。

3.?文件操作

a. 创建一个文本文件(例如.txt),写入几行文字。

b. 编写一个程序,读取这个文本文件的内容并打印出来。

4.?异常处理

a. 编写一个程序,要求用户输入一个数字,然后尝试将其转换为整数。处理可能出现的异常情况。

b. 在同一个程序中添加一个文件读取功能,要求用户输入一个文件名,然后尝试打开并读取文件内容。处理可能出现的文件操作异常。

5.?面向对象编程

a. 创建一个名为Person的类,具有nameage属性。添加一个方法,用于打印出该人的信息。

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()

文章来源:https://blog.csdn.net/weixin_59383576/article/details/135239010
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。