A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lilihehek 初级黑马   /  2018-5-31 19:41  /  1191 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

和大家分享一个让我又爱又恨的题   从小到大排序列表


l = [33, 22, 1, 2, 2, 3, 23, 4, 56, 6, 22, 12]

Flag = 1
print(l)
while Flag <= (len(l) - 1):

   for j in range(0, (len(l) - 1)):  # 循环三次
      if l[j] <= l[j + 1]:
         continue
      elif l[j] > l[j + 1]:
         l[j], l[j + 1] = l[j + 1], l[j]
   Flag += 1

   # for i in range(0, (len(l) - 1)):
   #  if l[j] < l[j + 1]:
   #     Flag = 0
print(l)

第二种
a=[1,3,2,7,5,8,1,0]
i=len(a)-1
print(i)
while i>0:
    j=0
    while j<i:
        if a[j]>=a[j+1]:
            a[j],a[j+1]=a[j+1],a[j]
        j+=1
    i-=1
print(a)



循环法  最好
a = [44, 22, 33, 85,2, 12, 90]
for i in range(0, len(a)):
   for j in range(0, i):
      if a <= a[j]:
         a, a[j] = a[j], a
print(a)


列表法
l1 = [11, 22, 33, 85, 12, 90]
l2 = []
for i in range(0,len(l1)):
   # 找出l1中最小值
   a = min(l1)
   # l1删除列表中最小值
   l1.remove(a)
   # l2 添加 l1的最小值
   l2.append(a)
print(l2)



这个题就更有意思了    论 列表去重的各种方法....甚至都不认识的函数

ids = [1, 2, 3, 3, 4, 2, 3, 4, 5, 6, 1]
news_ids = []

for id in ids:
   if id not in news_ids:

      news_ids.append(id)
print(news_ids)


ids = [1,4,3,3,4,2,3,4,5,6,1]
ids = list(set(ids))

ids = [1,4,3,3,4,2,3,4,5,6,1]
news_ids = list(set(ids))
news_ids.sort(ids.index)

ids = [1,4,3,3,4,2,3,4,5,6,1]
func = lambda x,y:x if y in x else x + [y]
reduce(func, [[], ] + ids)

#reduce()函数作用是:把结果继续和序列的下一个元素做累积计算
map函数后,g(x)将会作用到列表的每个元素


# liebiao=set(liebiao)
ids = [1, 2, 3, 3, 4, 2, 3, 4, 5, 6, 1]
def delRepeat(liebiao):
   for x in liebiao:
      while liebiao.count(x) > 1:
         liebiao.remove(x)
   print(liebiao)
delRepeat(ids)


再就是我的笔记  经典的数据笔记

列表
元组
集合
字典

英文
list
tuple
set
dict

可否读写
读写
只读
读写
读写

可否重复

存储方式
键(不能重复)
键值对(键不能重复)

是否有序
有序
有序
无序
无序,自动正序

初始化
[1,'a']
('a', 1)
set([1,2]) 或 {1,2}
{'a':1,'b':2}

添加
append
只读
add
d['key'] = 'value'

读元素
l[2:]
t[0]
d['a']

评分

参与人数 1黑马币 +1 收起 理由
luanji + 1 很给力!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马