python项目实例代码 新手python的6个实战项目

裂墙建议收藏,Python实践范例标题!1.斐波那契数列斐波那契数列,又称黄金分割数列,指的是这样一个数列:0,1,1,2,3,5,8,13,21,34,…数学上,斐波那契数列是用递归的方法定义的:#!/usr/bin/pyth

本文最后更新时间:  2023-04-22 06:34:57

裂墙建议收藏,Python实践范例标题!


1.斐波那契数列

斐波那契数列,又称黄金分割数列,指的是这样一个数列:0,1,1,2,3,5,8,13,21,34,…

数学上,斐波那契数列是用递归的方法定义的:

#!/usr/bin/python3 def fib(n): if n == 1: return [1] if n == 2: return [1, 1] fibs = [1, 1] for i in range(2, n): fibs.append(fibs[-1] + fibs[-2]) return fibs # 输出前 10 个斐波那契数列print (fib(10))

上述示例的输出结果是:

[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]


水仙花的数量

打印出所有”水仙花的数量”,所谓”水仙花的数量”它指的是一个三位数,其位数的立方和等于数字本身。例如:153是一个”水仙花的数量”因为153=1的三次方+5的三次方+3的三次方。

用for循环控制100-999个数,每个数分解成10位,10位,100位。

#!/usr/bin/python3for n in range(100,1000): i = n // 100 j = n // 10 % 10 k = n % 10 if n == i*i*i + j*j*j + k*k*k: print(n)

上述示例的输出结果是:

153370371407


三、九十九张乘法表

输出9*9乘法表。

考虑分支和列,有9行9列,I控制行,J控制列。

#!/usr/bin/python3 for i in range(1, 10): print() for j in range(1, i+1): print ("%d*%d=%d" % (i, j, i*j), end=" " )

上述示例的输出结果是:

1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=94*1=4 4*2=8 4*3=12 4*4=165*1=5 5*2=10 5*3=15 5*4=20 5*5=256*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=367*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=498*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=649*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81


四、猴子吃桃子。

猴子吃桃子的问题:第一天,猴子摘了一些桃子,马上吃了一半,但是没有上瘾。他们又吃了一个,第二天早上,他们吃了一半剩下的桃子,又吃了一个。每天早上吃前一天剩下的一半一个。到第10天早上,只剩下一个桃子了。问问你第一天挑了几个?

采取逆向思维的方法,由后向前推断。

#!/usr/bin/python3x2 = 1for day in range(9,0,-1): x1 = (x2 + 1) * 2 x2 = x1print (x1)

上述示例的输出结果是:

1534


动词 (verb的缩写)回文数

一个5位数字,判断是否是回文。也就是12321是回文,一位数等于一万位数,十位数等于一千位数。

#!/usr/bin/python3 a = int(input("请输入一个数字:\n"))x = str(a)flag = True for i in range(len(x)//2): if x[i] != x[-i - 1]: flag = False breakif flag: print ("%d 是一个回文数!" % a)else: print ("%d 不是一个回文数!" % a)

上述示例的输出结果是:

请输入一个数字:1232112321 是一个回文数!


第六,生兔子

经典问题:有一对兔子。他们从出生后的第三个月开始,每个月都有一对兔子。小兔子长到第三个月的时候,每个月都会再生一对兔子。如果兔子不死,每个月兔子总数是多少?

兔子的规律是1,1,2,3,5,8,13,21…

#!/usr/bin/python3 f1 = 1f2 = 1for i in range(1,22): print ('%12ld %12ld' % (f1,f2), end=" ") if (i % 3) == 0: print ('') f1 = f1 + f2 f2 = f1 + f2

上述示例的输出结果是:

1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 3524578 5702887 9227465 14930352 24157817 39088169 63245986 102334155 165580141 267914296


相信很多人都在尝试自学Python,但是在自学的过程中总是看得懂却做不到。就像学生时代老师说的,我以为我懂了,但是看题目就很迷茫。所以还是要多练习一些经典的例子~ ~

祝大家Python学习顺利!没有B U G~

温馨提示:内容均由网友自行发布提供,仅用于学习交流,如有版权问题,请联系我们。