Python100题

本文提供了一系列Python编程练习题,包括斐波那契数列、列表操作、乘法口诀表、水仙花数、质因数分解等。通过这些实例,帮助读者加深对Python语法和算法的理解,提升编程能力。
摘要由CSDN通过智能技术生成

局部与整体变量

global num1
num1=20
def fun():
    global num1
    num1=2
    print("函数内修改后num1=",num1)

print("初始num1=",num1)
fun()
print("运行完函数后num1=",num1)

Python 练习实例5
题目:输入三个整数x,y,z,请把这三个数由小到大输出。

程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
补充:以多种形式输出数字

a=input('shuru')
b=input('shuru')
c=input('shuru')
print(type(a))
l=[]
l.append(a)
l.append(b)
l.append(c)
l.sort()
print(type(l))
print(l)
print(' '.join(l))

得出结果

shuru8
shuru5
shuru9
<class 'str'>
<class 'list'>
['5', '8', '9']
5 8 9

Python 练习实例6
题目:斐波那契数列。
程序分析:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。
在数学上,费波那契数列是以递归的方法来定义:

F0 = 0 (n=0)
F1 = 1 (n=1)
Fn = F[n-1]+ Fn-2

def fib(n):
    if n==0:
       return 0
    if (n==1)or(n==2):
        return 1
    return fib(n-1)+fib(n-2)
print(fib(10))

在这里插入图片描述
Python 练习实例7
题目:将一个列表的数据复制到另一个列表中。
程序分析:使用列表[:]。
在这里插入图片描述
Python 练习实例8
题目:输出 9*9 乘法口诀表。

程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
上三角

for i in range(1, 10):
    for j in range(1, i+1):
        if (i==j):
            print(j, "*", i, "=", i * j)
        else:
            if (i>j):
                print(j, "*", i, "=", i * j,end=' ')

在这里插入图片描述
Python 练习实例9
题目:暂停一秒输出。
程序分析:使用 time 模块的 sleep() 函数
import time
m={2:1,3:2}
for key,value in dict.items(m):
time.sleep(2)
print(m)

Python 练习实例10
题目:暂停一秒输出,并格式化当前时间。
程序分析:无。
程序源代码:

import time
m={2:1,3:2}
for key,value in dict.items(m):
    time.sleep(2)
    print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
    print (time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
    print(m)

Python 练习实例11

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

程序分析:兔子的规律为数列1,1,2,3,5,8,13,21…

f1 = 1
f2 = 1
for i in range(1,22):
    print ('%d %d' % (f1,f2))
    if (i % 3) == 0:
        print('')#这句话很重要,直接打印的就是它所下面的内容
    f1 = f1 + f2
    f2 = f1 + f2

题目:判断101-200之间有多少个素数,并输出所有非素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

程序源代码:

from math import sqrt
m=[]
for i in range(101,200):
    b=(sqrt(i))
    d=int(b)
    for j in range(2,d):
        if ((i%j)==0):
            print(i,'不是质数')
            m.append(i)
            print(m)

Python 练习实例13
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

for i in range(100,999):
    a=int(i/100)
    b=int((i/10)%10)
    c=int((i%100)%10)
    d=(a**3+b**3+c**3)
    if (d==i):
        print(i)

Python 练习实例14

题目:将一个正整数分解质因数。例如:输入90,打印出90=233*5。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束ÿ

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值