栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python练习9

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python练习9

1.用递归函数实现求两个数m,n的最大公约数

2.P159—6.2写在书上
   P162———64—6.7写在书上
   P180- 6.1

4.P180-6.2

5.对于—个列表,在保持非零元素相对顺序的同时,将元素中所有的数字0移动到末尾。例如,获得输入列表[0,1,0,3,12],输出[1,3,12,0,0]。

6. 将列表 S =[9,7,8,3,2,1,5,6]中的偶数变成它的平方,奇数不变,最后分别输出处理后的列表。

7. 成绩统计。
输入n,再依次输入 n 位同学的成绩,对输入的成绩进行统计及格与不及格信息。
输出结果包括:输入的原始成绩数据,有效成绩人数,及格人数,不及格人数。
注意:①对于输入的人数小于0时,输出“ ERROR ”
        ②输入成绩过程中如果输入<0或>100的数,则成绩输入结束,并输出最终结果。


1.用递归函数实现求两个数m,n的最大公约数

def gcd(m, n):
    if (n == 0):
        return m
    else:
        return gcd(n, m % n)


m = int(input("m ="))
n = int(input("n = "))
print('m,n的最大公约数是', gcd(m, n))

2.P159—6.2写在书上
   P162———64—6.7写在书上
   P180- 6.1

import random
import string

# 定义生成范围
chars = string.ascii_letters + string.digits
pwds = []

# 循环生成
for i in range(8):
    pwd = ''.join(random.sample(chars, 8))
    pwds.append(pwd)

# 循环输出
for i in pwds:
    print(i)

4.P180-6.2

def getList(lst):
    for i in range(len(lst)):
        if lst[i] in lst[i + 1:]:
            return True
    return False


lst1 = ['aaa', 'bbb', 'ccc', 'ddd']
lst2 = ['aaa', 'bbb', 'ccc', 'aaa']

if getList(lst1):
    print('lst1里有重复元素')
else:
    print('lst1里无重复元素')

if getList(lst2):
    print('lst2里有重复元素')
else:
    print('lst2里无重复元素')

5.对于—个列表,在保持非零元素相对顺序的同时,将元素中所有的数字0移动到末尾。例如,获得输入列表[0,1,0,3,12],输出[1,3,12,0,0]。

ls = []
num = int(input("请确定列表元素个数:"))
for i in range(num):
    ls.append(eval(input()))
print(ls)

for i in ls:
    if i == 0:
        ls.remove(0)
        ls.append(0)
print(ls)

6. 将列表 S =[9,7,8,3,2,1,5,6]中的偶数变成它的平方,奇数不变,最后分别输出处理后的列表。

S = [9, 7, 8, 3, 2, 1, 5, 6]
for i in range(len(S)):
    if S[i] % 2 == 0:
        S[i] *= S[i]
print(S)

7. 成绩统计。
输入n,再依次输入 n 位同学的成绩,对输入的成绩进行统计及格与不及格信息。
输出结果包括:输入的原始成绩数据,有效成绩人数,及格人数,不及格人数。
注意:①对于输入的人数小于0时,输出“ ERROR ”
        ②输入成绩过程中如果输入<0或>100的数,则成绩输入结束,并输出最终结果。

n = int(input("请确定人数:"))
result = []
countPerson = 0
countC = 0
countD = 0
if n < 0:
    print("ERROR")
else:
    for i in range(n):
        score = int(input("请输入第{}位学生的成绩:".format(i + 1)))
        if score < 0 or score > 100:
            break
        else:
            result.append(score)
            countPerson += 1
            if score >= 60:
                countC += 1
            else:
                countD += 1
    print("输入的原始成绩数据:")
    for j in result:
        print(j)
    print("原始有效成绩数据:", result)
    print("有效成绩人数:", countPerson)
    print("及格人数:", countC)
    print("不及格人数:", countD)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/580679.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号