1.列表合并保留最大长度

import itertoolsw, x, y, z = [], [1], [2, 3], [4, 5, 6]longest_wxyz = itertools.zip_longest(w, x, y, z)print(list(longest_wxyz))

结果: [(None, 1, 2, 4), (None, None, 3, 5), (None, None, None, 6)]

2.列表元素替换

lst = ['1','2','3']rep = ['4' if x == '2' else x for x in lst]print(rep)

结果: ['1', '4', '3']

3.列表进行去重操作

一般的去重操作后是出现乱序的情况

t=['8','7','2','中国','China','中国','1','4']
t=list(set(t))
print(t)

结果: ['China', '4', '中国', '8', '1', '7', '2']

如果既想实现去重,又能保持原有的顺序,可以使用下面的方法

temp=list(set(t))
temp.sort(key=t.index)
print(temp)

结果: ['8', '7', '2', '中国', 'China', '1', '4']

4.列表推导式

#方法1:传统方法
import time
t0=time.time()
ind=[]
for i in range(10000):sqr_values=i*iind.append(sqr_values)
t1=time.time()
print(t1-t0)
0.004066944122314453#方法2:列表推导式
import time
t0=time.time()
sqr_value=[i*i for i in range(10000)]
t1=time.time()
print(t1-t0)
0.0020749568939208984

5.如何让列表所有元素首字母变大写?

问题:

c=['zz','yy','xx']
c[0:2]=c[0:2].capitalize()

提示错误:

AttributeError: 'list' object has no attribute 'capitalize'

解决:

#方法一
c = ['zz','yy','xx']
c = [string.capitalize() for string in c]#方法二
c = ['xx', 'yy', 'zz']
c = ' '.join(c).title().split()#方法三
c = ['xx', 'yy', 'zz']
c = ' '.join(c).title().split() #['Xx', 'Yy', 'Zz']#方法四
[_.capitalize() for _ in c]#方法五
c = [_.title() for _ in c]

6.如何合并列表中key相同的字典?

#现有list
list1 = [{a: 123}, {a: 456},{b: 789}]#合并成
list2 = [{a: [123,456]},{b: [789]}]from collections import defaultdict
lst = [{'a': 123}, {'a': 456},{'b': 789}]dic = {}
for _ in lst:for k, v in _.items():dic.setdefault(k, []).append(v)print [{k:v} for k, v in dic.items()]

7.去除列表中的\n 和空字符

s=['\n', 'magnet:?xt=urn:btih:060C0CE5CFAE29A48102280B88943880689859FC\n']

上面是目标代码,一个列表,中间有\n,我们现在将其去掉

s=[x.strip() for x in magnet_link]

运行会发现结果为

s=['', 'magnet:?xt=urn:btih:060C0CE5CFAE29A48102280B88943880689859FC']

离我们的要求越来越近了

s=[x.strip() for x in magnet_link if x.strip()!='']

好了,结果出来了

s=['magnet:?xt=urn:btih:060C0CE5CFAE29A48102280B88943880689859FC']

8.字符串和列表互相转换

字符串转为列表

str1 = 'a1b2' ls1 = [str(i) for i in str1]

列表转为字符串

ls2 = ['1','a','2','b'] str2 = ''.join(ls2)

同步遍历多个列表
使用zip()函数

name_list = ['张三', '李四', '王五']
age_list = [54, 18, 34]
for name, age in zip(name_list, age_list):
print(name, ':', age)

运行结果:张三 : 54 李四 : 18 王五 : 34

利用下标

list1 = [1, 2, 3, 4, 5]
list2 = ['a', 'b', 'c', 'd', 'f']n = 0 for each in list1:print(each, list2[n])n += 1

运行结果: 1 a 2 b 3 c 4 d 5 f

python 列表相关应用大全相关推荐

  1. python列表操作函数大全_Python列表操作函数

    列表可以进行多个数据的存储,同时python中的列表设计非常到位,它可以实现内容动态扩充,可以进行后期数据的删除,这些就需要通过Python提供的列表操作函数来实现了. 对于Python语言而言,开发 ...

  2. python计算相关矩阵_Numpy使用大全(python矩阵相关运算大全)-Python数据分析基础2...

    //2019.07.10 python数据分析基础--numpy(数据结构基础) import numpy as np: 1.python数据分析主要的功能实现模块包含以下六个方面: (1)numpy ...

  3. python列表函数方法_与Python列表相关的函数

    对于列表而言,除了设置和修改其中的元素,还有一些其他的方法也很有用,我们来具体看一下. Python 获取列表的长度 有时候,知道列表中有多少个元素的话,会很有帮助.例如,如果我们不断地向 fruit ...

  4. python列表使用技巧大全_Python 基础起步 (六) List的实用技巧大全

    ## List初步进阶 ## hello,大家好,经过上篇笔记的介绍,我们已经对List这种数据类型有了初步的理解,今天我要趁热打铁,为大家介绍一些实用的List技巧,希望能帮助到各位大家~ exte ...

  5. python列表相关操作

    insert(): 作用:在列表指定的位置插入数据. 语法:列表.insert(位置下标,数据) 例子: my_list = ['a', 'b', 'c'] my_list.insert(2,'d') ...

  6. 【Python基础】零基础学习Python列表操作

    作者:来自读者投稿 整理:Lemon 出品:Python数据之道 " 「Python数据之道」导读:本文来自读者投稿,Python数据之道早些时候也发过 Python 列表相关的文章,可以前 ...

  7. (兔C残篇)关于python 列表的介绍

    文章目录 1. 列表是什么? 1.1 创建列表的demo 1.2 列表元素的访问 1.3 列表的访问嵌套方法 demo 1.4 使用 Geany编译器,print语句报错解决方案 1.5 python ...

  8. python列表之典型案例

    博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏. ...

  9. python列表使用技巧与方法_Python列表的相关操作与方法

    Python列表的相关操作与方法 1.列表 why:int.bool.str存在缺陷 str:存储少量的数据:所有的操作获取的内容都是 str类型,存储的数据类型单一. what: 列表可以承载任意数 ...

  10. 【Python】元组和列表相关知识总结

    python中,我们经常用到元组和列表,本文主要总结了一下元组和列表的一些基本用法. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...

最新文章

  1. 角色转移服务器维护怎么回事,服务器互通及游戏角色转移说明
  2. 突破磁盘低级检测实现文件隐藏
  3. 浅谈游戏视觉包装中的“情感化设计”
  4. java高级用法之:JNA类型映射应该注意的问题
  5. c++11 你需要知道这些就够了
  6. 下载丨7月数据库技术通讯:LINUX OS配置问题导致数据库重启
  7. 在外面旅游,手机用电怎么解决?
  8. linux 一些常规操作合集 (cat grep awk chmod vim ..)
  9. Spring + MyBatis配置整合
  10. c#服务器后台搭建_微信影视小程序搭建拆解:第一课,影视小程序简介,搭建影视小程序的整体流程...
  11. FillForm网页表单填写插件(用于火狐浏览器,自动填表,自动表单,填写表单)
  12. nodejs中使用nodemon加载文件报错
  13. 新一届信息奥赛国家队出炉:3/4来自浙江,北大英才班成最大赢家
  14. 【阅读笔记】Mutual CRF-GNN for Few-shot Learning
  15. 全国高中数学联赛——几何
  16. 计算机英语教案模板,小学英语教案模板三篇
  17. HTML5新特性小结
  18. 周怎么换算成月_最大的黄金ETF出现增持,震荡周如何操作?
  19. 电机控制知识总结笔记
  20. TitleLabel

热门文章

  1. MySQL技术内幕 InnoDB存储引擎【一】
  2. c++ string
  3. 属性变量,实例变量,全局变量
  4. mysql分页优化方法
  5. 通过图像的指针读取图像
  6. 从零基础入门Tensorflow2.0 ----二、5.3 实战sklearn超参数搜索
  7. 决策树的简单实现与可视化
  8. Unity-MRTK开发(一)环境配置
  9. Node安装模块命令
  10. android实现Materia Design风格APP(二):部分Materia Design风格的控件介绍一