更新 Python 100道基础入门检测练习题【下篇】(附答案)
前言
大家早好、午好、晚好吖 ❤ ~
爆肝更新 Python 100道基础入门练习题【篇上】
更多精彩内容、资源皆可点击文章下方名片获取此处跳转
实例021:猴子偷桃
题目:
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
程序分析:
按规则反向推断:猴子有一个桃子,他偷来一个桃子,觉得不够又偷来了与手上等量的桃子,一共偷了9天。
peach=1
for i in range(9):peach=(peach+1)*2
print(peach)
实例022:比赛对手
题目:
两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。
有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
程序分析:
找到条件下不重复的三个对手即可。
a=set(['x','y','z'])
b=set(['x','y','z'])
c=set(['x','y','z'])
c-=set(('x','z'))
a-=set('x')
for i in a:for j in b:for k in c:if len(set((i,j,k)))==3:print('a:%s,b:%s,c:%s'%(i,j,k))
实例023:画菱形
题目:
打印出如下图案(菱形):
程序分析:
递归调用即可。
def draw(num):a="*"*(2*(4-num)+1)print(a.center(9,' '))if num!=1:draw(num-1)print(a.center(9,' '))
draw(4)
实例024:斐波那契数列II
题目:
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。
程序分析:
就是斐波那契数列的后一项除以前一项。
a = 2.0
b = 1.0
s = 0
for n in range(1,21):s += a / ba,b = a + b,a
print (s)
实例025: 阶乘求和
题目:
求1+2!+3!+…+20!的和。
程序分析:
1+2!+3!+…+20!=1+2(1+3(1+4(…20(1))))
res=1
for i in range(20,1,-1):res=i*res+1
print(res)
实例026:递归求阶乘
题目:
利用递归方法求5!。
程序分析:
递归调用即可。
def factorial(n):return n*factorial(n-1) if n>1 else 1
print(factorial(5))
实例027:递归输出
题目:
利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
程序分析:
递归真是蠢方法(个人意见勿喷)
def rec(string):if len(string)!=1:rec(string[1:])print(string[0],end='')rec(input('string here:'))
实例028:递归求等差数列
题目:
有5个人坐在一起,问第五个人多少岁?
他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。
请问第五个人多大?
程序分析:
就一等差数列。
def age(n):if n==1:return 10return 2+age(n-1)
print(age(5))
实例029:反向输出
题目:
给一个不多于5位的正整数,
要求:一、求它是几位数,
二、逆序打印出各位数字。
程序分析:
学会分解出每一位数,用字符串的方法总是比较省事。
n=int(input('输入一个正整数:'))
n=str(n)
print('%d位数'%len(n))
print(n[::-1])
实例030:回文数
题目:
一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
程序分析:
用字符串比较方便,就算输入的不是数字都ok。
n=input("随便你输入啥啦:")
a=0
b=len(n)-1
flag=True
while a<b:if n[a]!=n[b]:print('不是回文串')flag=Falsebreaka,b=a+1,b-1
if flag:print('是回文串')
实例031:字母识词
题目:
请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
程序分析:
这里用字典的形式直接将对照关系存好。
weekT={'h':'thursday','u':'tuesday'}
weekS={'a':'saturday','u':'sunday'}
week={'t':weekT,'s':weekS,'m':'monday','w':'wensday','f':'friday'}
a=week[str(input('请输入第一位字母:')).lower()]
if a==weekT or a==weekS:print(a[str(input('请输入第二位字母:')).lower()])
else:print(a)
实例032:反向输出II
题目:
按相反的顺序输出列表的值。
程序分析:
无。
a = ['one', 'two', 'three']
print(a[::-1])
实例033:列表转字符串
题目:
按逗号分隔列表。
程序分析:
无。
L = [1,2,3,4,5]
print(','.join(str(n) for n in L))
实例035:设置输出颜色
题目:
文本颜色设置。
程序分析:
无。
class bcolors:HEADER = '\033[95m'OKBLUE = '\033[94m'OKGREEN = '\033[92m'WARNING = '\033[93m'FAIL = '\033[91m'ENDC = '\033[0m'BOLD = '\033[1m'UNDERLINE = '\033[4m'
print(bcolors.WARNING + "警告的颜色字体?" + bcolors.ENDC)
实例036:算素数
题目:
求100之内的素数。
程序分析:
用else执行for循环的奖励代码(如果for是正常完结,非break)。
lo=int(input('下限:'))
hi=int(input('上限:'))
for i in range(lo,hi+1):if i > 1:for j in range(2,i):if (i % j) == 0:breakelse:print(i)
实例037:排序
题目:
对10个数进行排序。
程序分析:
同实例005。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
raw=[]
for i in range(10):x=int(input('int%d: '%(i)))raw.append(x)for i in range(len(raw)):for j in range(i,len(raw)):if raw[i]>raw[j]:raw[i],raw[j]=raw[j],raw[i]
print(raw)
实例038:矩阵对角线之和
题目:
求一个3*3矩阵主对角线元素之和。
程序分析 :
无。
mat=[[1,2,3],[3,4,5],[4,5,6]]
res=0
for i in range(len(mat)):res+=mat[i][i]
print(res)
实例039:有序列表插入元素
题目:
有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
程序分析:
首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
lis=[1,10,100,1000,10000,100000]
n=int(input('insert a number: '))
lis.append(n)
for i in range(len(lis)-1):if lis[i]>=n:for j in range(i,len(lis)):lis[j],lis[-1]=lis[-1],lis[j]break
print(lis)
实例040:逆序列表
题目:
将一个数组逆序输出。
程序分析:
依次交换位置,或者直接调用reverse方法。
lis=[1,10,100,1000,10000,100000]
for i in range(int(len(lis)/2)):lis[i],lis[len(lis)-1-i]=lis[len(lis)-1-i],lis[i]
print('第一种实现:')
print(lis)lis=[1,10,100,1000,10000,100000]
print('第二种实现:')
lis.reverse()
print(lis)
实例041:类的方法与变量
题目:
模仿静态变量的用法。
程序分析:
构造类,了解类的方法与变量。
def dummy():i=0print(i)i+=1class cls:i=0def dummy(self):print(self.i)self.i+=1a=cls()
for i in range(50):dummy()a.dummy()
实例042:变量作用域
题目:
学习使用auto定义变量的用法。
程序分析:
python中的变量作用域。
i=0
n=0
def dummy():i=0print(i)i+=1
def dummy2():global nprint(n)n+=1
print('函数内部的同名变量')
for j in range(20):print(i)dummy()i+=1
print('global声明同名变量')
for k in range(20):print(n)dummy2()n+=10
实例043:作用域、类的方法与变量
题目:
模仿静态变量(static)另一案例。
程序分析:
综合实例041和实例042。
class dummy:num=1def Num(self):print('class dummy num:',self.num)print('global num: ',num)self.num+=1n=dummy()
num=1
for i in range(5):num*=10n.Num()
实例044:矩阵相加
题目:
计算两个矩阵相加。
程序分析:
创建一个新的矩阵,使用 for 迭代并取出 X 和 Y 矩阵中对应位置的值,相加后放到新矩阵的对应位置中。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
X = [[12,7,3],[4 ,5,6],[7 ,8,9]]Y = [[5,8,1],[6,7,3],[4,5,9]]res=[[0,0,0],[0,0,0],[0,0,0]]
for i in range(len(res)):for j in range(len(res[0])):res[i][j]=X[i][j]+Y[i][j]
print(res)
实例045:求和
题目:
统计 1 到 100 之和。
程序分析:
无
res=0
for i in range(1,101):res+=i
print(res)
实例046:打破循环
题目:
求输入数字的平方,如果平方运算后小于 50 则退出。
程序分析:
无
while True:try:n=float(input('输入一个数字:'))except:print('输入错误')continuedn=n**2print('其平方为:',dn)if dn<50:print('平方小于50,退出')break
实例047:函数交换变量
题目:
两个变量值用函数互换。
程序分析:
无
def exc(a,b):return (b,a)
a=0
b=10
a,b=exc(a,b)
print(a,b)
实例048:数字比大小
题目:
数字比较。
程序分析:
无
a=int(input('a='))
b=int(input('b='))
if a<b:print('a<b')
elif a>b:print('a>b')
else:print('a=b')
实例049:lambda
题目:
使用lambda来创建匿名函数。
程序分析:
无
Max=lambda x,y:x*(x>=y)+y*(y>x)
Min=lambda x,y:x*(x<=y)+y*(y<x)a=int(input('1:'))
b=int(input('2:'))print(Max(a,b))
print(Min(a,b))
实例050:随机数
题目:
输出一个随机数。
程序分析:
使用 random 模块。
import random
print(random.uniform(10,20))
实例051:按位与
题目:
学习使用按位与 & 。
程序分析:
0&0=0; 0&1=0; 1&0=0; 1&1=1。
a=0o77
print(a)
b=a&3
print(b)
b=b&7
print(b)
实例052:按位或
题目:
学习使用按位或 | 。
程序分析:
0|0=0; 0|1=1; 1|0=1; 1|1=1
a=0o77
print(a|3)
print(a|3|7)
实例053:按位异或
题目:
学习使用按位异或 ^ 。
程序分析:
0^0=0; 0^1=1; 1^0=1; 1^1=0
a=0o77
print(a^3)
print(a^3^7)
实例054:位取反、位移动
题目 :
取一个整数a从右端开始的4〜7位。
程序分析:
可以这样考虑:
-
先使a右移4位。
-
设置一个低4位全为1,其余全为0的数。可用(0<<4)
-
将上面二者进行&运算。
a=int(input('输入一个数字: '))
b=0 # 0
b=~b # 1
b=b<<4 # 10000
b=~b # 1111
c=a>>4
d=c&b
print('a:',bin(a))
print('b:',bin(b))
print('c:',bin(c))
print('d:',bin(d))
实例055:按位取反
题目:
学习使用按位取反~。
程序分析 :
~0=1; ~1=0;
print(~234)
print(~~234)
实例056:画圈
题目:
画图,学用circle画圆形。
程序分析:
无。
from tkinter import *
canvas=Canvas(width=800,height=600,bg='yellow')
canvas.pack(expand=YES,fill=BOTH)
k=1
j=1
for i in range(26):canvas.create_oval(310-k,250-k,310+k,250+k,width=1)k+=jj+=0.3
mainloop()
实例057:画线
题目:
画图,学用line画直线。
程序分析:
无。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
if __name__ == '__main__':from tkinter import *canvas = Canvas(width=300, height=300, bg='green') canvas.pack(expand=YES, fill=BOTH) x0 = 263y0 = 263y1 = 275x1 = 275for i in range(19):canvas.create_line(x0,y0,x0,y1, width=1, fill='red')x0 = x0 - 5y0 = y0 - 5x1 = x1 + 5y1 = y1 + 5x0 = 263y1 = 275y0 = 263for i in range(21):canvas.create_line(x0,y0,x0,y1,fill = 'red')x0 += 5y0 += 5y1 += 5mainloop()
实例058:画矩形
题目:
画图,学用rectangle画方形。
程序分析 :
无。
if __name__ == '__main__':from tkinter import *root = Tk()root.title('Canvas')canvas = Canvas(root,width = 400,height = 400,bg = 'yellow')x0 = 263y0 = 263y1 = 275x1 = 275for i in range(19):canvas.create_rectangle(x0,y0,x1,y1)x0 -= 5y0 -= 5x1 += 5y1 += 5canvas.pack()root.mainloop()
实例059:画图(丑)
题目 :
画图,综合例子。
程序分析 :
丑。
if __name__ == '__main__':from tkinter import *canvas = Canvas(width = 300,height = 300,bg = 'green')canvas.pack(expand = YES,fill = BOTH)x0 = 150y0 = 100canvas.create_oval(x0 - 10,y0 - 10,x0 + 10,y0 + 10)canvas.create_oval(x0 - 20,y0 - 20,x0 + 20,y0 + 20)canvas.create_oval(x0 - 50,y0 - 50,x0 + 50,y0 + 50)import mathB = 0.809for i in range(16):a = 2 * math.pi / 16 * ix = math.ceil(x0 + 48 * math.cos(a))y = math.ceil(y0 + 48 * math.sin(a) * B)canvas.create_line(x0,y0,x,y,fill = 'red')canvas.create_oval(x0 - 60,y0 - 60,x0 + 60,y0 + 60)for k in range(501):for i in range(17):a = (2 * math.pi / 16) * i + (2 * math.pi / 180) * kx = math.ceil(x0 + 48 * math.cos(a))y = math.ceil(y0 + 48 + math.sin(a) * B)canvas.create_line(x0,y0,x,y,fill = 'red')for j in range(51):a = (2 * math.pi / 16) * i + (2* math.pi / 180) * k - 1x = math.ceil(x0 + 48 * math.cos(a))y = math.ceil(y0 + 48 * math.sin(a) * B)canvas.create_line(x0,y0,x,y,fill = 'red')mainloop()
实例060:字符串长度
题目:
计算字符串长度。
程序分析:
无。
s='zhangguang101'
print(len(s))
实例061:杨辉三角
题目:
打印出杨辉三角形前十行。
程序分析 :
无。
def generate(numRows):r = [[1]]for i in range(1,numRows):r.append(list(map(lambda x,y:x+y, [0]+r[-1],r[-1]+[0])))return r[:numRows]
a=generate(10)
for i in a:print(i)
实例062:查找字符串
题目:
查找字符串。
程序分析:
无。
s1='aabbxuebixuebi'
s2='ab'
s3='xue'
print(s1.find(s2))
print(s1.find(s3))
实例063:画椭圆
题目:
画椭圆。
程序分析:
使用 tkinter。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
if __name__ == '__main__':from tkinter import *x = 360y = 160top = y - 30bottom = y - 30canvas = Canvas(width = 400,height = 600,bg = 'white')for i in range(20):canvas.create_oval(250 - top,250 - bottom,250 + top,250 + bottom)top -= 5bottom += 5canvas.pack()mainloop()
实例064:画椭圆、矩形
题目:
利用ellipse 和 rectangle 画图。。
程序分析:
无。
if __name__ == '__main__':from tkinter import *canvas = Canvas(width = 400,height = 600,bg = 'white')left = 20right = 50top = 50num = 15for i in range(num):canvas.create_oval(250 - right,250 - left,250 + right,250 + left)canvas.create_oval(250 - 20,250 - top,250 + 20,250 + top)canvas.create_rectangle(20 - 2 * i,20 - 2 * i,10 * (i + 2),10 * ( i + 2))right += 5left += 5top += 10canvas.pack()mainloop()
实例065:画组合图形
题目:
一个最优美的图案。
程序分析:
无。
import math
from tkinter import *class PTS:def __init__(self):self.x = 0self.y = 0
points = []def LineToDemo():screenx = 400screeny = 400canvas = Canvas(width = screenx,height = screeny,bg = 'white')AspectRatio = 0.85MAXPTS = 15h = screenyw = screenxxcenter = w / 2ycenter = h / 2radius = (h - 30) / (AspectRatio * 2) - 20step = 360 / MAXPTSangle = 0.0for i in range(MAXPTS):rads = angle * math.pi / 180.0p = PTS()p.x = xcenter + int(math.cos(rads) * radius)p.y = ycenter - int(math.sin(rads) * radius * AspectRatio)angle += steppoints.append(p)canvas.create_oval(xcenter - radius,ycenter - radius,xcenter + radius,ycenter + radius)for i in range(MAXPTS):for j in range(i,MAXPTS):canvas.create_line(points[i].x,points[i].y,points[j].x,points[j].y)canvas.pack()mainloop()
if __name__ == '__main__':LineToDemo()
实例066:三数排序
题目:
输入3个数a,b,c,按大小顺序输出。
程序分析:
同实例005。’
raw=[]
for i in range(3):x=int(input('int%d: '%(i)))raw.append(x)for i in range(len(raw)):for j in range(i,len(raw)):if raw[i]>raw[j]:raw[i],raw[j]=raw[j],raw[i]
print(raw)raw2=[]
for i in range(3):x=int(input('int%d: '%(i)))raw2.append(x)
print(sorted(raw2))
实例067:交换位置
题目:
输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
程序分析 :
无。
li=[3,2,5,7,8,1,5]li[-1],li[li.index(min(li))]=li[li.index(min(li))],li[-1]m=li[0]
ind=li.index(max(li))
li[0]=li[ind]
li[ind]=mprint(li)
实例068:旋转数列
题目:
有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
程序分析:
无。
from collections import *
li=[1,2,3,4,5,6,7,8,9]
deq=deque(li,maxlen=len(li))
print(li)
deq.rotate(int(input('rotate:')))
print(list(deq))
实例069:报数
题目:
有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
程序分析:
无。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
if __name__ == '__main__':nmax = 50n = int(input('请输入总人数:'))num = []for i in range(n):num.append(i + 1)i = 0k = 0m = 0while m < n - 1:if num[i] != 0 : k += 1if k == 3:num[i] = 0k = 0m += 1i += 1if i == n : i = 0i = 0while num[i] == 0: i += 1print(num[i])
实例070:字符串长度II
**题目 **
写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。
**程序分析 **
无。
def lenofstr(s):return len(s)print(lenofstr('tanxiaofengsheng'))
实例071:输入和输出
题目
编写input()和output()函数输入,输出5个学生的数据记录。
**程序分析 **
无。
N = 3
#stu
# num : string
# name : string
# score[4]: list
student = []
for i in range(5):student.append(['','',[]])def input_stu(stu):for i in range(N):stu[i][0] = input('input student num:\n')stu[i][1] = input('input student name:\n')for j in range(3):stu[i][2].append(int(input('score:\n')))def output_stu(stu):for i in range(N):print ('%-6s%-10s' % ( stu[i][0],stu[i][1] ))for j in range(3):print ('%-8d' % stu[i][2][j])if __name__ == '__main__':input_stu(student)print (student)output_stu(student)
实例072:创建链表
**题目 **
创建一个链表。
**程序分析 **
无
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
class Node:def __init__(self, data):self.data = dataself.next = Nonedef get_data(self):return self.dataclass List:def __init__(self, head):self.head = headdef is_empty(self): return self.get_len() == 0def get_len(self): length = 0temp = self.headwhile temp is not None:length += 1temp = temp.nextreturn lengthdef append(self, node):temp = self.headwhile temp.next is not None:temp = temp.nexttemp.next = nodedef delete(self, index): if index < 1 or index > self.get_len():print("给定位置不合理")returnif index == 1:self.head = self.head.nextreturntemp = self.headcur_pos = 0while temp is not None:cur_pos += 1if cur_pos == index-1:temp.next = temp.next.nexttemp = temp.nextdef insert(self, pos, node):if pos < 1 or pos > self.get_len():print("插入结点位置不合理")returntemp = self.headcur_pos = 0while temp is not Node:cur_pos += 1if cur_pos == pos-1:node.next = temp.nexttemp.next =nodebreaktemp = temp.nextdef reverse(self, head):if head is None and head.next is None:return headpre = headcur = head.nextwhile cur is not None:temp = cur.nextcur.next = prepre = curcur = temphead.next = Nonereturn predef print_list(self, head):init_data = []while head is not None:init_data.append(head.get_data())head = head.nextreturn init_dataif __name__=='__main__':head=Node('head')link=List(head)for i in range(10):node=Node(i)link.append(node)print(link.print_list(head))
实例073:反向输出链表
**题目 **
反向输出一个链表。
程序分析
无。
class Node:def __init__(self, data):self.data = dataself.next = Nonedef get_data(self):return self.dataclass List:def __init__(self, head):self.head = headdef is_empty(self): return self.get_len() == 0def get_len(self): length = 0temp = self.headwhile temp is not None:length += 1temp = temp.nextreturn lengthdef append(self, node):temp = self.headwhile temp.next is not None:temp = temp.nexttemp.next = nodedef delete(self, index): if index < 1 or index > self.get_len():print("给定位置不合理")returnif index == 1:self.head = self.head.nextreturntemp = self.headcur_pos = 0while temp is not None:cur_pos += 1if cur_pos == index-1:temp.next = temp.next.nexttemp = temp.nextdef insert(self, pos, node):if pos < 1 or pos > self.get_len():print("插入结点位置不合理")returntemp = self.headcur_pos = 0while temp is not Node:cur_pos += 1if cur_pos == pos-1:node.next = temp.nexttemp.next =nodebreaktemp = temp.nextdef reverse(self, head):if head is None and head.next is None:return headpre = headcur = head.nextwhile cur is not None:temp = cur.nextcur.next = prepre = curcur = temphead.next = Nonereturn predef print_list(self, head):init_data = []while head is not None:init_data.append(head.get_data())head = head.nextreturn init_dataif __name__=='__main__':head=Node('head')link=List(head)for i in range(10):node=Node(i)link.append(node)print(link.print_list(head))print(link.print_list(link.reverse(head)))
实例074:列表排序、连接
**题目 **
列表排序及连接。
**程序分析 **
排序可使用 sort() 方法,连接可以使用 + 号或 extend() 方法。
a=[2,6,8]
b=[7,0,4]
a.extend(b)
a.sort()
print(a)
实例075:不知所云
**题目 **
放松一下,算一道简单的题目。
**程序分析 **
鬼知道是什么。
if __name__ == '__main__':for i in range(5):n = 0if i != 1: n += 1if i == 3: n += 1if i == 4: n += 1if i != 4: n += 1if n == 3: print (64 + i)
实例076:做函数
**题目 **
编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数1/1+1/3+…+1/n
程序分析
无。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def peven(n):i = 0s = 0.0for i in range(2,n + 1,2):s += 1.0 / ireturn sdef podd(n):s = 0.0for i in range(1, n + 1,2):s += 1.0 / ireturn sdef dcall(fp,n):s = fp(n)return sif __name__ == '__main__':n = int(input('input a number: '))if n % 2 == 0:sum = dcall(peven,n)else:sum = dcall(podd,n)print (sum)
实例077:遍历列表
题目
循环输出列表
程序分析
无。
l=['moyu','niupi','xuecaibichi','shengfaji','42']
for i in range(len(l)):print(l[i])
实例078:字典
**题目 **
找到年龄最大的人,并输出。请找出程序中有什么问题。
程序分析
无。
if __name__ == '__main__':person = {"li":18,"wang":50,"zhang":20,"sun":22}m = 'li'for key in person.keys():if person[m] < person[key]:m = keyprint ('%s,%d' % (m,person[m]))
实例079:字符串排序
**题目 **
字符串排序。
**程序分析 **
无。
l=['baaa','aaab','aaba','aaaa','abaa']
l.sort()
print(l)
实例080:猴子分桃
题目
海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?
**程序分析 **
无。
if __name__ == '__main__':i = 0j = 1x = 0while (i < 5) :x = 4 * jfor i in range(0,5) :if(x%4 != 0) :breakelse :i += 1x = (x/4) * 5 +1j += 1print(x)for p in range(5):x=(x-1)/5*4print(x)
实例081:求未知数
**题目 **
809*??=800*??+9*?? 其中??代表的两位数, 809*??为四位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
程序分析
无。
a = 809
for i in range(10,100):b = i * aif b >= 1000 and b <= 10000 and 8 * i < 100 and 9 * i >= 100:print(b,' = 800 * ', i, ' + 9 * ', i)for i in range(10,100):if 8*i>99 or 9*i<100:continueif 809*i==800*i+9*i:print(i)break
实例082:八进制转十进制
**题目 **
八进制转换为十进制
程序分析
无。
n=eval('0o'+str(int(input('八进制输入:'))))
print(n)
实例083:制作奇数
**题目 **
求0—7所能组成的奇数个数。
程序分析
组成1位数是4个。1,3,5,7结尾
组成2位数是7*4个。第一位不能为0
组成3位数是784个。中间随意
组成4位数是788*4个。
if __name__ == '__main__':sum = 4s = 4for j in range(2,9):print (sum)if j <= 2:s *= 7else:s *= 8sum += sprint('sum = %d' % sum)
实例084:连接字符串
**题目 **
连接字符串。
程序分析
无。
delimiter = ','
mylist = ['Brazil', 'Russia', 'India', 'China']
print(delimiter.join(mylist))
实例085:整除
**题目 **
输入一个奇数,然后判断最少几个 9 除于该数的结果为整数。
**程序分析 **
999999 / 13 = 76923。
实例086:连接字符串II
**题目 **
两个字符串连接程序。
**程序分析 **
无。
a='guangtou'
b='feipang'
print(b+a)
实例087:访问类成员
题目
回答结果(结构体变量传递)。
**程序分析 **
无。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
if __name__ == '__main__':class student:x = 0c = 0def f(stu):stu.x = 20stu.c = 'c'a= student()a.x = 3a.c = 'a'f(a)print(a.x,a.c)
实例088:打印星号
题目
读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。
**程序分析 **v
无。
for i in range(3):print('*'*int(input('input a number: ')))
实例089:解码
**题目 **
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
**程序分析 **
无。
n=input()
n = str(n)
a=[]
for i in range(4):a.append((int(n[i])+5)%10)
a[0],a[3]=a[3],a[0]
a[1],a[2]=a[2],a[1]
print ("".join('%s' %s for s in a))
实例090:列表详解
**题目 **
列表使用实例。
**程序分析 **
无。
#list
#新建列表
testList=[10086,'中国移动',[1,2,4,5]] #访问列表长度
print (len(testList) )
#到列表结尾
print (testList[1:])
#向列表添加元素
testList.append('i\'m new here!') print (len(testList) )
print (testList[-1] )
#弹出列表的最后一个元素
print (testList.pop(1) )
print (len(testList) )
print (testList )
#list comprehension
#后面有介绍,暂时掠过
matrix = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
print (matrix )
print (matrix[1] )
col2 = [row[1] for row in matrix]#get a column from a matrix
print (col2 )
col2even = [row[1] for row in matrix if row[1] % 2 == 0]#filter odd item
print (col2even)
实例091:time模块
题目
时间函数举例1。
**程序分析 **
无。
if __name__ == '__main__':import timeprint (time.ctime(time.time()))print (time.asctime(time.localtime(time.time())))print (time.asctime(time.gmtime(time.time())))
实例092:time模块II
**题目 **
时间函数举例2。
程序分析
如何浪费时间。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:582950881
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
if __name__ == '__main__':import timestart = time.time()for i in range(3000):print(i)end = time.time()print (end - start)
实例093:time模块III
题目
时间函数举例3。
程序分析
如何浪费时间。
if __name__ == '__main__':import timestart = time.clock()for i in range(100):print(i)end = time.clock()print('different is %6.3f' % (end - start))
实例094:time模块IV
**题目 **
时间函数举例4。
**程序分析 **
如何浪费时间。
if __name__ == '__main__':import timeimport randomplay_it = input('do you want to play it.(\'y\' or \'n\')')while play_it == 'y':c = input('input a character:\n')i = random.randint(0,2**32) % 100print ('please input number you guess:\n')start = time.clock()a = time.time()guess = int(input('input your guess:\n'))while guess != i:if guess > i:print('please input a little smaller')guess = int(input('input your guess:\n'))else:print('please input a little bigger')guess = int(input('input your guess:\n'))end = time.clock()b = time.time()var = (end - start) / 18.2print (var)# print 'It took you %6.3 seconds' % time.difftime(b,a))if var < 15:print ('you are very clever!')elif var < 25:print ('you are normal!')else:print ('you are stupid!')print ('Congradulations')print ('The number you guess is %d' % i)play_it = input('do you want to play it.')
实例095:转换时间格式
题目
字符串日期转换为易读的日期格式。
程序分析
看看就得了,dateutil是个第三方库。
from dateutil import parser
dt = parser.parse("Aug 28 2015 12:00AM")
print (dt)
实例096:计算复读次数
题目
计算字符串中子串出现的次数。
程序分析
无。
s1='xuebixuebixuebixuebixuebixuebixuebixue'
s2='xuebi'
print(s1.count(s2))
实例097:磁盘写入
题目:
从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。
程序分析:
无。
if __name__ == '__main__':from sys import stdoutfilename = input('输入文件名:\n')fp = open(filename,"w")ch = input('输入字符串:\n')while ch != '#':fp.write(ch)stdout.write(ch)ch = input('')fp.close()
实例098:磁盘写入II
题目:
从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。
程序分析:
无
if __name__ == '__main__':fp = open('test.txt','w')string = input('please input a string:\n')string = string.upper()fp.write(string)fp = open('test.txt','r')print (fp.read())
实例099:磁盘读写
题目:
有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中。
程序分析:
无。
if __name__ == '__main__':import stringfp = open('test1.txt')a = fp.read()fp.close()fp = open('test2.txt')b = fp.read()fp.close()fp = open('test3.txt','w')l = list(a + b)l.sort()s = ''s = s.join(l)fp.write(s)fp.close()
实例100:列表转字典
题目:
列表转换为字典。
程序分析 :
无。
i = ['a', 'b']
l = [1, 2]
print (dict(zip(i,l)))
尾语 💝
好了,今天的分享就差不多到这里了!
完整代码、更多资源、疑惑解答直接点击下方名片自取即可。
有更多建议或问题可以评论区或私信我哦!一起加油努力叭(ง •_•)ง
喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!
相关文章:
更新 Python 100道基础入门检测练习题【下篇】(附答案)
前言 大家早好、午好、晚好吖 ❤ ~ 爆肝更新 Python 100道基础入门练习题【篇上】 更多精彩内容、资源皆可点击文章下方名片获取此处跳转 实例021:猴子偷桃 题目: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半…...
[RDMA-高级计算机网络report] Congestion Control for Large-Scale RDMA Departments
本文主要解决的问题是在RoCEv2体系中,基于优先级的拥塞控制PFC是一种粗粒度的机制。 它在端口(或端口加优先级)级别上运行,并且不区分流。PAUSE机制是基于每个端口(和优先级)的,而不是基于每个流…...
ROS2功能包Hello world(python)
文章目录环境准备Python创建工作空间、功能包及节点方法编译使用环境准备 为了便于日后复现,相关环境已经打包到docker中。 拉取docker镜像 docker pull 1224425503/ros2_foxy_full:latest新建容器 docker run -dit --rm --privilegedtrue --network host -e NV…...
数学建模竞赛的一些心得体会
1.数学建模经验首先简要的介绍一下我的情况。数学建模我也是在大一暑假开始接触的,之前对其没有任何的了解。我本身对数学也有相对较厚的兴趣,同时我也是计算机专业的学生,因此,我觉得我可参加数学建模的这个比赛。大一的暑假参加…...
什么是自动化测试?自动化测试现状怎么样?
什么是自动化测试:其实自动化测试,就是让我们写一段程序去测试另一段程序是否正常的过程,自动化测试可以更加省力的替代一部分的手动操作。 现在自动化测试的现状,也是所有学习者关心的,但现在国内公司主要是以功能测…...
CHAPTER 2 Web HA集群部署 - Heartbeat
Web HA集群部署 - Heartbeat1. Heartbeat 概述1.1 Heartbeat主要组成部分2. 环境依赖2.1 环境及组件软件2.2 关闭firewalld & selinux2.3 配置双机互信,SSH密钥登录2.4 同步时间(以主节点时间为准)2.5 配置域名解析3 安装软件3.1 安装…...
蓝桥杯每日一题:不同路径数(dfs深度优先)
给定一个 nm的二维矩阵,其中的每个元素都是一个 [1,9] 之间的正整数。 从矩阵中的任意位置出发,每次可以沿上下左右四个方向前进一步,走过的位置可以重复走。 走了 k 次后,经过的元素会构成一个 (k1) 位数。 请求出一共可以走出…...
NCRE计算机等级考试Python真题(十)
第十套试题1、数据库系统的核心是___________。A.数据库管理系统B.数据模型C.软件工具D.数据库正确答案: A2、下列叙述中正确的是___________。A.线性表链式存储结构的存储空间可以是连续的,也可以是不连续的B.线性表链式存储结构与顺序存储结构的存储空…...
【蓝桥杯嵌入式】点亮LED灯,流水灯的原理图解析与代码实现——STM32
🎊【蓝桥杯嵌入式】专题正在持续更新中,原理图解析✨,各模块分析✨以及历年真题讲解✨都在这儿哦,欢迎大家前往订阅本专题,获取更多详细信息哦🎏🎏🎏 🪔本系列专栏 - 蓝…...
RK3288-android8-es7210-阵列麦克风
ES7210驱动包 应需求调试一个ES7210的阵列麦克风 首先移植 From 234647c69a57c32198c65836e7fc521dc22e444b Mon Sep 17 00:00:00 2001 From: LuoXiaoTan <lxt@rock-chips.com> Date: Tue, 10 Jul 2018 18:08:50 -0700 Subject: [PATCH] ASoC: codecs: add es7210 adc …...
硬件工程师常见问题与答疑
在工作中,尤其是做了很多年的,有些问题可能不知道,又不好意思问,怕别人说你连这个都不知道?很尴尬,而且百度又搜不到,本博主收集了很多答疑,希望里面有对你有用的,或者是…...
【Java】Java进阶学习笔记(一)—— 面向对象(封装)
【Java】Java进阶学习笔记(一)—— 面向对象(封装)一、类中成分1、类中成分2、this关键字this() 访问构造器方法3、static关键字1. 成员变量的区分2. 成员方法的区分3. 成员变量访问语法的区分二、封装1、封装的定义封装的好处2、…...
jsp拆迁管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目
一、源码特点 JSP 拆迁管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&…...
CCNP350-401学习笔记(易错题合集)
CCNP350-401学习笔记(1-50题)_殊彦_sy的博客-CSDN博客CCNP350-401学习笔记(2023.2.17)https://blog.csdn.net/shuyan1115/article/details/129088574?spm1001.2014.3001.5502CCNP350-401学习笔记(51-100题)…...
喀秋莎Camtasia2023最新版本电脑录屏剪辑软件
录屏软件的鼻祖是techSmith 的喀秋莎(Techsmith Camtasia Studio),视频编辑软件Camtasia 2023发布,十大新功能放出!作为一个自媒体人,每天都要录制编辑视频,选择一个好的视频编辑工具就是大家首先面临的一个…...
「考研算法」
考研算法 前言 本系列文章涉及的算法内容,针对的是哈尔滨工业大学854科目。在本文中通过具体的算法题进行讲解相应算法。 今天涉及的算法主要有线性筛,十大排序中快速排序和归并排序。 后续会有动态规划的相关算法以及尝试模型的总结,如果…...
Android Framework-操作系统基础
最近在看《深入理解Android内核设计思想(第2版)》,个人感觉很不错,内容很多,现将书里个人认为比较重要的内容摘录一下,方便后期随时翻看。 计算机体系结构 硬件是软件的基石,所有的软件功能最…...
美国最新调查显示 50% 企业已在用 ChatGPT,其中 48% 已让其代替员工,你怎么看?
美国企业开始使用ChatGPT,我认为这不是什么新闻。 如果美国的企业现在还不使用ChatGPT,那才是个大新闻。 据新闻源显示,已经使用chatGPT的企业中,48%已经让其代替员工工作。 ChatGPT的具体职责包括:客服、代码编写、招…...
[Java·算法·中等]LeetCode17. 电话号码的字母组合
每天一题,防止痴呆题目示例分析思路1题解1分析思路2题解2题目 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。…...
C#7/C#8/C#9 与dotnetSDK 以及dotnet framework对应关系
语言版本 对应的.net framework版本 对应的.net sdk版本 推荐使用的vs studio C#7.3 3.5、 4.0、 4.5 、4.5.1、 4.5.2 、4.6 、4.6.1、 4.6.2 4.7.1、 4.7.2 .netcore 2.0、.netcore2.1、 .netcore2.2 C#8.0 / F#4.7 不支持 .netcore 3.0、.netcore 3.1 C# 9.0 …...
jvm调优经验总结
最近一段时间很忙,忙到每天10点多11点下班还是感觉有很多事没有做完,不过倒也没有什么太过低落的情绪,有时候只安静的看一个视频,简单看点文字,或者平静的坐着,并没有太多想法。短时间的工作压力是可以接受…...
等保合规知识常见问题解答
Q1:什么是等级保护? 答:等级保护是指对国家重要信息、法人和其他组织及公民的专有信息以及公开信息和存储、传输、处理这些信息的信息系统分等级实行安全保护,对信息系统中使用的信息安全产品实行按等级管理,对信息系统…...
分享5款Windows同类软件中的翘楚
今天要给大家推荐的是5款软件,每个都是同类软件中的个中翘楚,请大家给我高调地使用起来,不用替我藏着掖着。1.沙盒工具——Sandboxie Sandboxie是一个电脑必备的沙盘工具,对于从网上下载的软件安装包、文件、视频、图片等等一切不…...
记--springboot-工具类中使用@Component、@Resource与@Value失效
写一个工具类 需要使用Resource注入RedisTemplate 使用Value获取application.properties配置文件中配置 并使用Component将该工具类交个spring管理 调试的时候RedisTemplate以及所有的变量全是是null 看了网上的各种解决方式五花八门 有的说出现问题的原因:Compon…...
手写一个react,看透react运行机制
适合人群 本文适合0.5~3年的react开发人员的进阶。 讲讲废话: react的源码,的确是比vue的难度要深一些,本文也是针对初中级,本意让博友们了解整个react的执行过程。 写源码之前的必备知识点 JSX 首先我们需要了解什么是JSX。…...
JS判断输入值是否为正整数,判断变量是否为数字
这篇文章将讨论如何确定一个变量是否代表 JavaScript 中的有效数字。 1.JS中的test是原来是JS中检测字符串中是否存在的一种模式,JS输入值是否为判断正整数代码: <script type”text/javascript”> function test() { var num document.getElem…...
Android开发八股文,Android也有自己的八股文了
前言别的行业都有自己的八股文,凭什么Android没有。2023春招即将来临,很多同学会问 Android开发的面试题有必要背吗?我的回答是:很有必要。你可以讨厌这种模式,但你一定要去背,因为不背你就进不了大厂。国内…...
你需要同款“Unreal项目自动化编译、打包和部署”方案吗?
在过往几期的UWA Pipeline最佳实践案例中,我们分享了如何通过Pipeline实现性能优化、性能管理、游戏内容验收和云真机系统的应用(实现批量真机设备的自动化测试,以及针对特效性能优化的方式),其实这些高效的方法并不局…...
电子技术——CMOS-AB类输出阶
电子技术——CMOS-AB类输出阶 本节我们研究CMOS-AB类输出阶。 经典配置 下图展示了一个经典的CMOS-AB类输出阶: 这个很像BJT二极管偏置版本的AB类输出阶,在这里二极管偏置变成了 Q1Q_1Q1 和 Q2Q_2Q2 偏置。不想BJT的情况,这里 QNQ_NQN…...
2023王道考研数据结构笔记第二章线性表
第二章 线性表 2.1 线性表的定义 2.1.1 线性表的基本概念 线性表是具有相同数据类型的n(n>0)个数据元素的有限序列,其中n为表长,当n0时线性表是一个空表。若用L命名线性表,则其一般表示为: L(a1,a2,...,ai,ai1,...,an)L(a_1…...
互联网公司是干啥的/seo网站的优化方案
TMemo组件属性 CaretPos 指定光标相对于编辑器的客户区域原点的X和Y的位置 当光标在TMemo组件上定位时,显示光标的坐标 panel1.Caption:当前位置:inttostr(Memo1.CaretPos.x),inttostr(Memo1.CaretPos.y); Lines 该属性以行为单位向文本编辑器添加或删除…...
网站的按钮怎么做 视频/网络营销的策划流程
在几个月之前,我在Firefox浏览器中发现了一个安全漏洞,这个漏洞就是CVE-2019-17016。在分析这个安全漏洞的过程中,我发现了一种新技术,即利用单一注入点从Firefox浏览器中提取CSS数据。在这篇文章中,我将跟大家详细介绍…...
安全教育平台登录入口/优化大师免费安装下载
大多数人引荐Linux,基本上都会说Linux让你更高效、更优异。然而工具只是工具。然而工具只是工具。然而工具只是工具。优异程序员和不优异程序员的差异首先是态度上的差异。他们有自个的理想,考虑许多,不管是项目开端之前还是在项目进行中&…...
帝国cms调用网站地址/百度搜索软件
page1: 假设Server A上面有Process X,它有一个socket M,和另外的Server B上面的Process Y的 Socket N以TCP协议连接上了,那么,据我所知,有2种情况会出现RST包: (1)X没有c…...
怎么才能注册做网站/网站设计优化
下载android应用的apk文件变成了zip--网上转载的解决方案 下载android应用的apk文件变成了zip--网上转载的解决方案 解决方案一、 最近把开发的android应用放在公司网站上,用IE下载后遇到了问题:扩展名.APK文件点击下载后却变成了.ZIP文件,…...
肥城网站制作/seo网站排名优化价格
一、MDN文字样式知识点 1、font-family: 提供一个字体栈? font-family: "Trebuchet MS", Verdana, sans-serif; 不止一个单词,用引号包裹 2、font-size单位:px、em、rem (1)px:绝对单位 (…...