Python

本文介绍了100+个Python编程练习题,旨在帮助学习者提升技能。练习题分为Level 1、2、3三个级别,覆盖基础到高级的Python编程概念。每个题目都有问题描述、提示和解决方案。通过解决这些题目,读者可以逐步掌握Python编程,并通过实际操作巩固所学知识。
摘要由CSDN通过智能技术生成

大家如果能坚持独立思考完成以下题目,一定可以帮大家轻松 get Python 的编程技能。目前,这个项目已经获得了 3994 Stars,2952 Forks。

Github 地址:Python-programming-exercises

首先,这 100+ 练习题根据难易程度分为三个等级:Level 1、2 和 3。下面对如何定义这三个 Level 进行了说明,大家可以结合自身的学习能力和实践经验进行选择。

其次,本编程题是基于Python3,每题都有问题描述、提示和解决方案。大家一定要先独立完成,然后再看参考答案哈~

前 25 题中,Q1~5、22~25 都是 Level 1 的难度,Q6~17 为 Level 2,Q18~22 为 Level 3。大家正好利用这五道题学习、巩固一下基础,然后就开始准备挑战自己吧!

1.    等级描述
Level 1:初级。是指刚刚通过Python入门课程的人。他可以用1或2个Python类或函数来解决一些问题。通常,答案可以直接在教科书中找到。
Level 2:中级。是指刚刚学习了Python,但是已经有了较强的编程背景的人。他应该能够解决可能涉及3或3个Python类或函数的问题。答案不能直接在课本上找到。
Level 3:高级。。他应该使用Python来解决更复杂的问题,使用更丰富的库函数、数据结构和算法。他应该使用几个Python标准包和高级技术来解决这个问题。
2.    问题的模板
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
问题
提示
解决方案
3.问题

前 25 题中,Q1~5、22~25 都是 Level 1 的难度,Q6~17 为 Level 2,Q18~22 为 Level 3。

100+Python编程题
题1
1级
问题:编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。
提示:考虑使用range(#begin, #end)方法

解决方案:

l=[]
for i in range(2000, 3201):
    if (i%7==0) and (i%5!=0):
        l.append(str(i))
 
print (','.join(l))
题2
1级
问题:编写一个可以计算给定数的阶乘的程序。结果应该以逗号分隔的顺序打印在一行上。假设向程序提供以下输入:8
则输出为:40320
提示:在为问题提供输入数据的情况下,应该假设它是控制台输入。
解决方案:

def fact(x):
    if x == 0:
        return 1
    return x * fact(x - 1)
print('请输入一个数字:')
x=int(input())
print (fact(x))
题3
1级
问题:使用给定的整数n,编写一个程序生成一个包含(i, i*i)的字典,该字典包含1到n之间的整数(两者都包含)。然后程序应该打印字典。
假设向程序提供以下输入:8
则输出为:
{1:1,2:4,3:9,4:16,5:25,6:36,,7:49,8:64}
提示:在为问题提供输入数据的情况下,应该假设它是控制台输入。考虑使用dict类型()
解决方案:

print('请输入一个数字:')
n=int(input())
d=dict()
for i in range(1,n+1):
    d[i]=i*i
 
print(d)
题4
1级
问题:编写一个程序,该程序接受控制台以逗号分隔的数字序列,并生成包含每个数字的列表和元组。假设向程序提供以下输入:
34岁,67年,55岁,33岁,12日,98年
则输出为:['34', '67', '55', '33', '12', '98']
               ('34', '67', '55', '33', '12', '98')
提示:在为问题提供输入数据的情况下,应该假设它是控制台输入。方法可以将列表转换为元组
解决方案:

import re
print('请输入一组数字:')
values=input()
l=values.split(",")
k=re.findall(r'[0-9]+',values)
t=tuple(k)
print (k)
print (t)
题5
1级
问题:定义一个至少有两个方法的类:        getString:从控制台输入获取字符串        printString::打印大写母的字符串。
还请包含简单的测试函数来测试类方法。
提示:使用_init__方法构造一些参数
解决方案:

class InputOutString(object):
    def __init__(self):
        self.s = ""
 
    def getString(self):
        print('请输入字符串:')
        self.s = input()
 
    def printString(self):
        print (self.s.upper())
 
strObj = InputOutString()
strObj.getString()
strObj.printString()
题6
2级
问题:
编写一个程序,根据给定的公式计算并打印值:。以下是C和H的固定值:C是50。H是3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值