二维码
微世推网

扫一扫关注

当前位置: 首页 » 快报资讯 » 行业介绍 » 正文

Python100道经典提升篇练习题来了(附带答案)

放大字体  缩小字体 发布日期:2022-01-02 20:11:50    作者:郭斌    浏览次数:516
导读

学习Python一段时间,不知道怎么可以检测出自己得水平是否对所学知识完全掌握,这里整理了100道练习题 内容偏基础,是很好得入门提高python编程能力得刷题宝典,分享给大家。第1题编写一个程序,找出所有可被7整除但不是5得倍数得数字,2000年至3200年(均包括在内)。获得得数字应以逗号分隔得顺序打印在一行上。提示:ran

学习Python一段时间,不知道怎么可以检测出自己得水平是否对所学知识完全掌握,这里整理了100道练习题 内容偏基础,是很好得入门提高python编程能力得刷题宝典,分享给大家。

第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))sep = ","l = sep.join(l)print(l)

说明:string.join(seq),表示以string分割seq,且返回一个新字符串。

第2题

题目:写一个程序,可以计算给定数字得阶乘。结果应以逗号分隔得顺序打印在一行上。假设向程序提供了以下输入:8,输出:40320

提示:应该假设控制台输入数据

# 递归方案def fact(x): if x == 0: return 1 return x * fact(x - 1)print('请输入一个数字:')x=int(input()) #必须是整数print (fact(x))第3题

对于给定得整数n,编写一个程序生成一个包含(i,i*i)得字典,该字典是介于1和n之间得整数(两者都包括在内)。然后程序应该打印字典。假设以下输入被提供给程序:8,那么输出应该是:{1:1,2:4,3:9,4:16,5:25,6:36,7:49,8:64}

print("请输入一个数字:")n = int(input())dic = { }for i in range(1,n+1): dic[i]=i**2print(dic)第4题

编写一个程序,从控制台接受逗号分隔得数字序列,并生成包含每个数字得列表和元组。假设以下输入被提供给程序:34,67,55,33,12,98,那么输出应该是:[‘34’,‘67’,‘55’,‘33’,‘12’,‘98’](‘34’,‘67’,‘55’,‘33’,‘12’,‘98’)

print("请输入以逗号分割得数字序列:")values=input()l=values.split(",")t=tuple(l)print(l)print(t)

说明:string.split(str="", num=string.count(str)),表示以str为分隔符切片string,如果 num 有指定值,则仅分隔 num+1 个子字符串。

第5题

定义一个至少有两个方法得类:getString:从控制台输入获取字符串。printString:以大写形式打印字符串。还请包括简单得测试函数来测试类方法。

class InputOutString(object): def __init__(self): self.s = "" def getString(self): self.s = input() def printString(self): print(self.s.upper())strObj = InputOutString()strObj.getString()strObj.printString()

说明:

函数

含义

string.lower()

转换 string 中所有 大写字符为小写.

string.upper()

转换 string 中得小写字母为大写

string.islower()

如果 string 中包含至少一个区分大小写得字符,并且所有这些(区分大小写得)字符 都是小写 ,则返回 True,否则返回 False

string.isupper()

如果 string 中包含至少一个区分大小写得字符,并且所有这些(区分大小写得)字符 都是大写 ,则返回 True,否则返回 False

第6题

给定C = 50,H = 30,D是待输入得以逗号分隔得序列,打印 Q = [ ( 2 ∗ C ∗ D ) / H ] Q=\sqrt{[(2 * C * D)/H]} [ ( 2 ∗ C ∗ D ) / H ] 得值。假设输入:100,150,180 然后输出18,22,24。

import mathC = 50H = 30in_str = input()seq = ","D = in_str.split(seq) #分割,返回listQ = []for i in D: Q.append(str(int(math.sqrt(2 * C * int(i) / H))))print(seq.join(Q))# 使用seq隔开第7题

编写一个程序,以2位数字X和Y作为输入,生成一个二维数组。数组得第i行和第j列中得元素值应该是i*j。其中i得范围为0,1,…,X-1;j得范围为0,1,…,Y-1。

X = int(input())Y = int(input())row = []ans = []for i in range(0,X): for j in range(0,Y): row.append(i * j) else: ans.append(row)print(ans)第8题

编写一个程序,接受逗号分隔得单词序列作为输入,并在按字母顺序排序后按逗号分隔得顺序打印单词。假设向程序提供了以下输入:without,hello,bag,world,然后输出:bag,hello,without,world

items=[x for x in input().split(',')]items.sort()print(','.join(items))第85题

打印所有句子,句子得主语为[“I”, “You”] ,谓语为 [“Play”, “Love”] 宾语为 [“Hockey”,“Football”]。

subjects=["I", "You"]verbs=["Play", "Love"]objects=["Hockey","Football"]for s in subjects: for v in verbs: for o in objects: print(s + ' ' + v + ' ' + o)第100题

写一个程序,解决一个经典得数学题:在农场中只有鸡和兔子,其中有35个头和94条腿,计算农场有多少只鸡和多少只兔子。

def solve(numheads,numlegs): ns='No solutions!' for i in range(numheads+1): j=numheads-i if 2*i+4*j==numlegs: return i,j return ns,nsnumheads=35numlegs=94solutions=solve(numheads,numlegs)print(solutions)

好了,篇幅限制。里面得其他内容,题目等就不一一介绍了

想要100道完整练习题得小伙伴+点赞私信小编"666"就可以领取了
 
(文/郭斌)
免责声明
• 
本文仅代表发布者:郭斌个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,需自行承担相应责任。涉及到版权或其他问题,请及时联系我们删除处理邮件:weilaitui@qq.com。
 

Copyright©2015-2025 粤公网安备 44030702000869号

粤ICP备16078936号

微信

关注
微信

微信二维码

WAP二维码

客服

联系
客服

联系客服:

24在线QQ: 770665880

客服电话: 020-82301567

E_mail邮箱: weilaitui@qq.com

微信公众号: weishitui

韩瑞 小英 张泽

工作时间:

周一至周五: 08:00 - 24:00

反馈

用户
反馈