一些适合初学者的 Python 基础练习题,可以帮助您练习编程思维
- 编写一个程序,计算并输出 1 到 100 之间所有偶数的和。
- 编写一个程序,输出 1 到 100 之间所有能被 3 整除但不能被 5 整除的数。
- 编写一个程序,输出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如,153 就是一个“水仙花数”,因为 $1^3 + 5^3 + 3^3 = 153$。
- 计时器装饰器:这个装饰器可以用来计算函数的执行时间。它的实现方式是在函数执行前记录当前时间,然后在函数执行后再记录当前时间,最后计算两个时间的差值,即为函数的执行时间。
- 缓存装饰器:这个装饰器可以用来缓存函数的计算结果,避免重复计算。它的实现方式是使用一个字典来保存函数的输入和输出,如果函数的输入已经在字典中存在,则直接返回对应的输出,否则执行函数并将输入和输出保存到字典中。
上面是题目,你可以先根据题目自己先试着写出来,在到下面来找答案,这样更有助于思考.和编写能力的提升
以下是答案部分:
- 题答案部分
sum = 0
for i in range(2, 101, 2):
sum += i
print(sum)
2.答案部分
for i in range(1, 101):
if i % 3 == 0 and i % 5 != 0:
print(i)
3.答案部分
for i in range(100, 1000):
a = i // 100
b = (i // 10) % 10
c = i % 10
if a ** 3 + b ** 3 + c ** 3 == i:
print(i)
4.答案部分
import time
def timer(func):
def wrapper(*args, **kwargs):
start_time = time.time()
result = func(*args, **kwargs)
end_time = time.time()
print(f"函数 {func.__name__} 的执行时间为 {end_time - start_time} 秒")
return result
return wrapper
@timer
def my_func():
time.sleep(1)
my_func()
5.答案部分
def cache(func):
cache_dict = {}
def wrapper(*args):
if args in cache_dict:
print(f"从缓存中获取 {args} 的结果")
return cache_dict[args]
else:
result = func(*args)
cache_dict[args] = result
print(f"计算 {args} 的结果并保存到缓存中")
return result
return wrapper
@cache
def my_func(x, y):
return x + y
print(my_func(1, 2))
print(my_func(1, 2))