• Python习题005


    作业一 :任意一个数字列表,然后进行排序(冒泡排序)
    方法一:

    1 def test1():
    2     list1 = [1,23,4,6,8,55,2,9,90,35]
    3     list1.sort() # sort()方法是对原列表进行排序
    4     print(list1)
    5 test1()
    作业 1 答案 1

    方法二:

     1 def test11():
     2     list1 = [1,23,4,6,8,55,2,9,90,35]
     3     len_list1 = len(list1)
     4     while len_list1>0:
     5         for i in range(len_list1-1): #保证有足够的迭代次数,从而输入正确的结果
     6             if list1[i] > list1[i+1]:
     7                 # list[i],list[i+1] = list[i+1],list[i]
     8                 li = list1[i]
     9                 list1[i] = list1[i+1]
    10                 list1[i+1] = li
    11         len_list1 -= 1
    12     print(list1)
    13 test11()
    作业 1 答案 2

    作业二:抽签:25选5去做不可描述的事情(要用到Python自带模块)

    1 import random
    2 def test2():
    3     num = random.sample(range(1, 25),5) #从1,25中选取5个随机整数
    4     print(num)
    作业 2 答案

    作业三:输入一个数,判断是不是水仙花数。

    1 def test31():
    2     while 1:
    3         num = input('输入一个数')
    4         lens = len(num)
    5         sum = 0
    6         for n in num:
    7             sum += pow(int(n),lens)
    8         print(f'{num}是水仙花数' if int(num)==sum else f'{num}不是水仙花数')
    9 test31()
    作业 3 答案 1
    1 def test32():
    2     lao_A = input("请输入一个数字:")
    3     s = int(lao_A[0])**3 + int(lao_A[1])**3 + int(lao_A[2])**3
    4     if int(lao_A) == s:
    5         print("是的")
    6     else:
    7         print("不是")
    8 test32()
    作业 3 答案 2
     1 def test33():
     2     for i in range(100,1000):
     3         sum = 0
     4         num = i
     5         while num:
     6             sum = sum+(num%10)**3
     7             num = num // 10
     8         if sum == i:
     9             print(i ,'是水仙花')
    10 test33()
    作业 3 答案 3
    1 def test34():
    2     for i in range(100,1000):
    3         a = i // 100
    4         b = i // 10 % 10
    5         c = i % 10
    6         if i == a**3 + b**3 + c**3:
    7             print(i, '是水仙花')
    8 test34()
    作业 3 答案 4

    作业四:生成两个列表,第一个列表100-0中的偶数(不包含0)。第二个列表:取出第一个列表中3的倍数(第二个列表应从第一个列表中取)。 使用列表表达式来完成本题。

    1 def test4():
    2     li = [j for j in [i for i in range(1,101) if i % 2 == 0] if j % 3 ==0]
    3     print(li)
    4 test4()
    作业 4 答案 1
     1 def test41():
     2     list = []
     3     list1 = []
     4     for i in range(1,101):
     5         if i % 2 == 0:
     6             list.append(i)
     7     print(list)
     8     for i in list:
     9         if i % 3 == 0:
    10             list1.append(i)
    11     print(list1)
    12 test41()
    作业 4 答案 2
  • 相关阅读:
    bzoj1101 [POI2007]Zap
    bzoj2648/2716 kdtree
    bzoj2850巧克力王国
    【bzoj1193】[HNOI2006]马步距离
    bzoj 4401 块的计数 思想+模拟+贪心
    【bzoj2751】[HAOI2012]容易题(easy) 数论,简单题
    Ubuntu分区小知识与分区方案
    Ubuntu16.04安装x11VNC远程桌面
    Ubuntu用户权限管理(chown, chmod)
    Ubuntu新建用户组
  • 原文地址:https://www.cnblogs.com/oito/p/11233797.html
Copyright © 2020-2023  润新知