1、题目:打印出杨辉三角形。
程序分析:无。
程序源代码:
实例
#!/usr/bin/python#-*-coding:UTF-8-*-if__name__=='__main__':a=[]foriinrange(10):a.append([])forjinrange(10):a[i].append(0)foriinrange(10):a[i][0]=1a[i][i]=1foriinrange(2,10):forjinrange(1,i):a[i][j]=a[i-1][j-1]+a[i-1][j]fromsysimportstdoutforiinrange(10):forjinrange(i+1):stdout.write(str(a[i][j]))stdout.write('')print
以上实例输出结果为:
1
11
121
1331
14641
15101051
1615201561
172135352171
18285670562881
193684126126843691
2、题目:查找字符串。
程序分析:无。
程序源代码:
#!/usr/bin/python
#-*-coding:UTF-8-*-
sStr1='abcdefg'
sStr2='cde'
printsStr1.find(sStr2)
以上实例输出结果为:
2
3、题目:画椭圆。
程序分析:使用Tkinter。
程序源代码:
实例
#!/usr/bin/python
#-*-coding:UTF-8-*-
if__name__=='__main__':
fromTkinterimport*
x=360
y=160
top=y-30
bottom=y-30
canvas=Canvas(width=400,height=600,bg='white')
foriinrange(20):
canvas.create_oval(250-top,250-bottom,250+top,250+bottom)
top-=5
bottom+=5
canvas.pack()
mainloop()
4、题目:利用ellipse和rectangle画图。。
程序分析:无。
程序源代码:
#!/usr/bin/python
#-*-coding:UTF-8-*-
if__name__=='__main__':
fromTkinterimport*
canvas=Canvas(width=400,height=600,bg='white')
left=20
right=50
top=50
num=15
foriinrange(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+=5
left+=5
top+=10
canvas.pack()
mainloop()
5、题目:一个最优美的图案。
程序分析:无。
程序源代码:
#!/usr/bin/python
#-*-coding:UTF-8-*-
importmath
classPTS:
def__init__(self):
self.x=0
self.y=0
points=[]
defLineToDemo():
fromTkinterimport*
screenx=400
screeny=400
canvas=Canvas(width=screenx,height=screeny,bg='white')
AspectRatio=0.85
MAXPTS=15
h=screeny
w=screenx
xcenter=w/2
ycenter=h/2
radius=(h-30)/(AspectRatio*2)-20
step=360/MAXPTS
angle=0.0
foriinrange(MAXPTS):
rads=angle*math.pi/180.0
p=PTS()
p.x=xcenter+int(math.cos(rads)*radius)
p.y=ycenter-int(math.sin(rads)*radius*AspectRatio)
angle+=step
points.append(p)
canvas.create_oval(xcenter-radius,ycenter-radius,
xcenter+radius,ycenter+radius)
foriinrange(MAXPTS):
forjinrange(i,MAXPTS):
canvas.create_line(points[i].x,points[i].y,points[j].x,points[j].y)
canvas.pack()
mainloop()
if__name__=='__main__':
LineToDemo()
6、题目:输入3个数a,b,c,按大小顺序输出。
程序分析:无。
程序源代码:
实例
#!/usr/bin/python
#-*-coding:UTF-8-*-
if__name__=='__main__':
n1=int(raw_input('n1=:\n'))
n2=int(raw_input('n2=:\n'))
n3=int(raw_input('n3=:\n'))
defswap(p1,p2):
returnp2,p1
ifn1>n2:n1,n2=swap(n1,n2)
ifn1>n3:n1,n3=swap(n1,n3)
ifn2>n3:n2,n3=swap(n2,n3)
printn1,n2,n3
以上实例输出结果为:
n1=:
123
n2=:
456
n3=:
789
123456789
7、题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
程序分析:无。
程序源代码:
实例
#!/usr/bin/python
#-*-coding:UTF-8-*-
definp(numbers):
foriinrange(6):
numbers.append(int(raw_input('输入一个数字:\n')))
p=0
defarr_max(array):
max=0
foriinrange(1,len(array)-1):
p=i
ifarray[p]>array[max]:max=p
k=max
array[0],array[k]=array[k],array[0]
defarr_min(array):
min=0
foriinrange(1,len(array)-1):
p=i
ifarray[p]
l=min
array[5],array[l]=array[l],array[5]
defoutp(numbers):
foriinrange(len(numbers)):
printnumbers[i]
if__name__=='__main__':
array=[]
inp(array)#输入6个数字并放入数组
arr_max(array)#获取最大元素并与第一个元素交换
arr_min(array)#获取最小元素并与最后一个元素交换
print'计算结果:'
outp(array)
以上实例输出结果为:
输入一个数字:
1
输入一个数字:
2
输入一个数字:
3
输入一个数字:
7
输入一个数字:
9
输入一个数字:
8
计算结果:
9
2
3
7
8
1
8、题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
程序分析:无。
程序源代码:
实例
#!/usr/bin/python
#-*-coding:UTF-8-*-
if__name__=='__main__':
n=int(raw_input('整数n为:\n'))
m=int(raw_input('向后移m个位置为:\n'))
defmove(array,n,m):
array_end=array[n-1]
foriinrange(n-1,-1,-1):
array[i]=array[i-1]
array[0]=array_end
m-=1
ifm>0:move(array,n,m)
number=[]
foriinrange(n):
number.append(int(raw_input('输入一个数字:\n')))
print'原始列表:',number
move(number,n,m)
print'移动之后:',number
以上实例输出结果为:
整数n为:
8
向后移m个位置为:
5
输入一个数字:
2
输入一个数字:
8
输入一个数字:
6
输入一个数字:
1
输入一个数字:
78
输入一个数字:
45
输入一个数字:
34
输入一个数字:
2
原始列表:[2,8,6,1,78,45,34,2]
移动之后:[1,78,45,34,2,2,8,6]
9、题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
程序分析:无。
程序源代码:
实例(Python2.0+)
#!/usr/bin/python
#-*-coding:UTF-8-*-
if__name__=='__main__':
nmax=50
n=int(raw_input('请输入总人数:'))
num=[]
foriinrange(n):
num.append(i+1)
i=0
k=0
m=0
whilem
ifnum[i]!=0:k+=1
ifk==3:
num[i]=0
k=0
m+=1
i+=1
ifi==n:i=0
i=0
whilenum[i]==0:i+=1
printnum[i]
执行以上代码,输出结果:
$pythontest.py
请输入总人数:34
10
以上就是本文关于零基础学习Python开发练习100题实例(7)的详细介绍,希望对大家有所帮助最后想要了解更多关于Python发展前景趋势,请关注扣丁学堂python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供最新的Python视频教程系统,通过千锋扣丁学堂金牌讲师在线录制的Python视频教程课程,让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:816572891。