「Python」2020.03.17学习笔记 | 第四章列表、元组、字典-习题(14-16)

  • 学习测试开发的Day75,真棒!
  • 学习时间为1H50M
  • 第四章列表、元组、字典-习题(14-16)

14、实现合并同类型的有序列表算法,要求不能有重复元素

代码:

list1=[18,1,58,9,3,3,18]
print(set(sorted(list1)))

结果

PS D:\0grory\chapter4> python .\14_sort.py
{1, 18, 3, 58, 9}

15、不区分大小写对包含多个字符串对象的列表进行排序,显示排序后的结果还需要显示大小写不变的原字符串

代码:

list1=["aBc","Zvx","hbr","pme"]
print(sorted(list1))
list1.sort()
print(list1)

结果

PS D:\0grory\chapter4> python .\15_wordsort.py
['Zvx', 'aBc', 'hbr', 'pme']
['Zvx', 'aBc', 'hbr', 'pme']
PS D:\0grory\chapter4>

16、一个数如果恰好等于它的因子之和,这个数就称为完数,例如6的因子为1,2,3,而6=1+2+3,因此6是完数,编程找出1000之内的所有完数,并按6 its factors are 1,2,3这样的格式输出

代码

result=[]
dict1={}
for i in range(1,1000):
    sum=0
    r=[]
    for j in range(1,i):
        if i%j==0:
            r.append(j)
            sum+=j  
    if i==sum:
        dict1[i]=r



for i in dict1:
    s=""
    l=len(dict1[i])
    for j in range(l):
        if j!=l-1:
            s=s+str(dict1[i][j])+","
        else:
            s=s+str(dict1[i][j])
    print(i,"its factors are",s)

    

输出结果:

PS D:\0grory\chapter4> python .\16_wanshu.py
496 its factors are 1,2,4,8,16,31,62,124,248
28 its factors are 1,2,4,7,14
6 its factors are 1,2,3

三道题逻辑都做的很快,
卡在最后这道题的格式输出了,弄了快1个小时,
好在是弄出来了,中间想放弃N次,就是不死心,觉得自己可以弄出来,结果真的弄出来啦~ 棒棒哒~

你可能感兴趣的:(「Python」2020.03.17学习笔记 | 第四章列表、元组、字典-习题(14-16))