Python笔记

这篇博客涵盖了Python的基础知识,包括分支与循环、字符串、列表、元组、字典、集合的练习题,以及函数、模块、文件操作等内容。通过一系列的实践题目,帮助读者巩固Python编程基础,提升编程能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

----------------------------Python代码

分支与循环部分练习题:

1、从键盘输入三个同学的成绩,然后找出最高分。

a = int(input("请输入第一个同学的成绩"))
b = int(input("请输入第二个同学的成绩"))
c = int(input("请输入第三个同学的成绩"))
d = max(a,b,c)
print(d)

2、输入三个同学的成绩,然后由大到小排序。

L=[]
a = int(input("请输入第一个同学的成绩"))
b = int(input("请输入第二个同学的成绩"))
c = int(input("请输入第三个同学的成绩"))
L.append(a)
L.append(b)
L.append(c)
L.sort()
print(L)

3、求出1000以内的所有完全数,如6=1+2+3除了它自身以外的因子之和等于它本身叫完全数。

for x in range(1,1000):  //x从11000遍历
    sum = 0              
    for y in range(1,x): //y从1到x遍历
        if(x % y ==0):   //如果x取余y ==0 说明y是x的因子
            sum += y     //将这个数的所有因子之和加起来
    if(x==sum):          //如果除它本身之外的因子之和  等于它本身  就输出
        print(sum)

4、用循环语句求出1+22+333+4444+55555+…+nnnnn

a = int(input("输出n的数"))  //使用终端输入
sum=0
k=1
for x in range(1,a+1):      //1遍历到a
    sum+=k*x                //sum=1+11*2+111*3+1111*4+11111*5
    k=k+(10**x)             //k=11 111 1111 11111
print(sum)                  //求出sum的和

5、求出2000-2100的所有闰年,条件是四年一闰;百年不闰,四百年再闰。

for i in range(2000,2101):
    if i % 4 ==0 and i % 100 != 0 or i % 400 ==0:# and优先级高于or
        print(i)

6、输入两个正整数,并求出它们的最大公约数和最小公倍数。

j = int(input("输入第一个数"))
l = int(input("输入第二个数"))
if(j<l):
    o,k=j,l
else:
    o,k=l,j
gck = 1
for x in range(2,o+1):
    if o % x == 0 and k % x ==0:
        gck = x
print("最大公约数=",gck)

gld = k
while (gld % o !=0 or gld % k !=0):
        gld += 1
print("最小公倍数=",gld)

7、输出100以内的所有质数。

L=[]
for x in range(2,100):
    for y in range(2,x):
        if(x % y == 0):
            break
    else:
     L.append(x)
print(L)

8、求100以内最大的10个质数的和。

L=[]
for x in range(2,100):
    for y in range(2,x):
        if(x % y == 0):
            break
    else:
        L.append(x)
print("100以内最大10个质数之和",L[-1]+L[-2]+L[-3]+L[-4]+L[-5]+L[-6]+L[-7]+L[-8]+L[-9]+L[-10])
print(sum(L[-1:-11:-1]))

9、求1到10所有偶数的和。

sum = 0
for x in range(0,11,2):
    sum+=x
print(sum)

10、将10-20不能被2或3整数的数输出。

for x in range(10,21):
    if(x % 2 != 0):
        if(x % 3 !=0):
            print(x)

字符串部分练习题:

1、计算用户输入的内容中有几个十进制数字?几个字
母?
如统计"China123 321china987CHINESE789 2"字符串字母和数字出现的个数。

# 方法一
a = "China123 321china987CHINESE789  2"
n = 0
m = 0
for x in a:
    if(x.isalpha()):
        n += 1
    if(x.isdigit()):
        m +=1
print("字母是:",n,"个")
print("数字是:",m,"个")
print(len(a))
# 字母是: 17 个
# 数字是: 13 个
# 33
# 方法二
a = "China123 321china987CHINESE789  2"
i=0
k=0
j=0
for x in a:
    if (x>='A')&(x<='Z'):
        i+=1
    elif (x>='a')&(x<='z'):
        k+=1
    elif (x>='0')&(x<='9'):
        j
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值