python项目实例代码(新手python的6个实战项目)
程序员文章站
2024-03-27 09:06:40
墙裂建议收藏,python练手实例题目!一、斐波那契数列斐波那契数列(fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。...
墙裂建议收藏,python练手实例题目!
一、斐波那契数列
斐波那契数列(fibonacci sequence),又称黄金分割数列,指的是这样一个数列: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个数,每个数分解出个位,十位,百位。
#!/usr/bin/python3
for 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)
以上实例输出结果为:
153
370
371
407
三、九九乘法表
输出 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=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*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/python3
x2 = 1
for day in range(9,0,-1):
x1 = (x2 + 1) * 2
x2 = x1
print (x1)
以上实例输出结果为:
1534
五、回文数
一个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
break
if flag:
print ("%d 是一个回文数!" % a)
else:
print ("%d 不是一个回文数!" % a)
以上实例输出结果为:
请输入一个数字:
12321
12321 是一个回文数!
六、生兔子
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
兔子的规律为数列1,1,2,3,5,8,13,21…
#!/usr/bin/python3
f1 = 1
f2 = 1
for 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~