python字典和集合对象可以进行索引操作_python字典和列表的高级应用

1.将序列分解为单独的变量

1.1问题

包含n个元素的元组或列表、字符串、文件、迭代器、生成器,将它分解为n个变量

1.2方案

直接通过赋值操作

要求:变量个数要等于元素个数

当执行分解操作时,有时需要丢弃某些特定的值,通常选一个用不到的变量来赋值就可以了

其中_代表不用的变量

2.从任意长度的可迭代对象中分解元素

问题:需要从可迭代的对象中分解n个值,但可迭代对象可能超过n,这就会导致‘too many values to unpack’的异常

解决:*表达式

注意:*变量  输出的是列表

如果*变量   放在第一个位置,那么会将前len(n)-1个值赋给*变量,最后一个值赋给其他变量

2.保存最后n个元素

print(q)

3.找到最大和最小的n个元素

3.1 n=1

max,min

3.2  n<

3.3 n

3.4 n

4.根据列表中字典的key对列表进行筛选

5.在两个字典中寻找相同点(集合的应用)

6.不排序且不改变原列表,实现列表有序5种方法

方法一:

思路:使用集合,对原集合和新产生的最小值集合取差集,每次取差集的最小值,插入新集合的首位。

代码实现:

方法二:

思路:1.最小值寻找思路:首先找出最大值,并赋值给最小值变量,循环列表的每个元素,当有元素小于当前最小变量,则把该元素重新赋值给最小变量,这样就得到了一个列表的最小值。

2.整体思路:将最小值插入到新列表,重复1,在循环中加判断,如果元素不是已经找过的最小值(已添加到新列表中),则执行找最小值的循环

代码实现:

方法三:

思路:1.寻找最小值,让最小值变量等于列表的第一个元素(且不是已经找到的最小值,即不属于列表l2,如果属于列表l2,则跳过该元素),循环整个列表,

如果有元素(该元素也不能是已找到的最小值,如果是,则跳过)小于当前最小值,则把该元素赋值给最小值。

2.本程序是根据列表元素的索引判断是否是已经找到的最小值

代码实现:

方法四:

思路:方法四和方法三整体思路一致,是方法三的改进版。

代码实现:

方法五:

思路:本程序是根据下一次寻找的最小值是大于上一次寻找的最小值(列表lis2[0]),且是所有大于lis2[0]的元素中的最小值。

代码实现:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值