一些适合初学者的 Python 基础练习题,可以帮助您练习编程思维

liftword5个月前 (12-25)技术文章76


  1. 编写一个程序,计算并输出 1 到 100 之间所有偶数的和。
  2. 编写一个程序,输出 1 到 100 之间所有能被 3 整除但不能被 5 整除的数。
  3. 编写一个程序,输出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如,153 就是一个“水仙花数”,因为 $1^3 + 5^3 + 3^3 = 153$。
  4. 计时器装饰器:这个装饰器可以用来计算函数的执行时间。它的实现方式是在函数执行前记录当前时间,然后在函数执行后再记录当前时间,最后计算两个时间的差值,即为函数的执行时间。
  5. 缓存装饰器:这个装饰器可以用来缓存函数的计算结果,避免重复计算。它的实现方式是使用一个字典来保存函数的输入和输出,如果函数的输入已经在字典中存在,则直接返回对应的输出,否则执行函数并将输入和输出保存到字典中。

上面是题目,你可以先根据题目自己先试着写出来,在到下面来找答案,这样更有助于思考.和编写能力的提升




以下是答案部分:

  1. 题答案部分
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))

相关文章

寒假内卷,就练这150道Python练习题(答案解析)

python入门简单,当我们学完基础知识后,最好的巩固方法就是拿一些练习题练手,综合所学内容,达到输入输出纠正的完美学习路径。今天给小伙伴们分享一份大佬整理的150道python练习题,涵盖Pytho...

python编程:57道练习题 python基本编程题

# 1、(√)怎么计算2的3次方 print("计算2的3次方", 2 ** 3) print("计算2的3次方", pow(2, 3)) # 2、怎么找出序列中的最...

Python练习题 python入门经典100题

题目1:计算1-2+3-4+...+99-100# using while-loop num = 1 sum_result = 0 while num <= 100: if num %...

超级详细干货!100道Python练习题(基础·实用)

Python是当下很热门的一种编程语言,作为大学生很有必要学习,这里总结了常见的100个编程例题,希望能帮到大家!PDF版已经打包好了...