python列表常用の方法

列表操作:

1.创建列表:

向列表添加元素:

[i for i in range(1,10)]列表解析式:

#将 1-10 每个数乘以 2 放入一个列表:
>>> li = []
>>> for i in range(1, 11):li.append(i*2)>>> print(li)
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
#--------------------
#列表解析式实现:
>>> li = [i*2 for i in range(1, 11)]
>>> print(li)
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
#---------------------
#此外列表解析式还支持添加筛选条件,例如筛选出 i*2>10 的数:
>>> li = [i*2 for i in range(1, 11) if i*2 > 10]
>>> print(li)
[12, 14, 16, 18, 20]

输入一组数,存入列表里:

'''
第一行为一个整数n。
第二行包含n个整数。
'''
#1.列表里面是数字
n=int(input())
a=list(map(int,input().split()))
#输入和输出:
3
1 2 3
>>> a
[1, 2, 3]#2.列表里面是字符
n=int(input())
a=input().split()
#输入和输出:
3
1 2 3
>>> a
['1', '2', '3']

2.求列表最值

利用python生成器Generator求列表最值

**生成器表达式:**类似于列表推导,但是,生成器返回按需产生结果的一个对象,而不是一次构建一个结果列表

'''
通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中,这种一边循环一边计算的机制,称为生成器(Generator)。python中的generator保存的是算法,真正需要计算出值的时候才会去往下计算出值。它是一种惰性计算(lazy evaluation)。
'''
#要创建一个generator有两种方式。#第一种方法:把一个列表生成式的[]改成(),就创建了一个generator:
>>> L = [x * x for x in range(10)]
>>> L
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
>>> g = (x * x for x in range(10))   # 注意把[]改成()后,不是生成一个tuple,而是生成一个generator
>>> g
<generator object <genexpr> at 0x1022ef630>#-----------------------------------------
#下面这个例子求字符串列表最大值
n=int(input())
arr = input().split()print(int(arr[i]) for i in range(n))print(max(int(arr[i]) for i in range(n))) # 最大值
print(min(int(arr[i]) for i in range(n))) # 最小值
print(sum(int(arr[i]) for i in range(n))) # 求和
#结果:
#输入:
5
1 2 3 4 5
#输出:
<generator object <genexpr> at 0x00000231AD2840A0>
5
1
15

3.多维列表

#1.创建一维列表,里面有10个0
>>> l=[0 for i in range(10)]
>>> l
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
#2.创建n行m列的二维列表,里面全是零
m,n=map(int,input().split())test = [[0 for i in range(m)] for j in range(n)]
#输入:
4 4
>>> print(test)
#输出:
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
>>> test[1][1]=233
>>> print(test)
[[0, 0, 0, 0], [0, 233, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]#输入:
2 3
#输出:
[[0, 0], [0, 0], [0, 0]]

python列表常用の操作相关推荐

  1. python列表常用操作函数_Python入门——列表常用操作

    Python列表常用操作 准备 控制台输入ipython parallels@parallels-vm:~$ ipythonPython 2.7.12 (default, Dec 4 2017, 14 ...

  2. Python列表常用操作,浅拷贝及深拷贝

    先看一些基本的操作 names = ["4ZhangYang", "#!Guyun","xXiangPeng",["alex&qu ...

  3. python 列表 常用操作 列表的循环遍历

    目录 列表格式 常用操作 查找 判断是否存在 添加数据 删除数据 修改数据 复制 列表的循环遍历 列表嵌套 列表为可变类型数据 列表格式 [数据1,数据2,数据3,.......] 注:列表可以一次性 ...

  4. python 列表常用操作(二)

    1.tuple 的 unpack a,b = t 2.格式化输出 print('您的输入:{},值为{}',format(a,b)) 3.日期计算 import datetime as dt impo ...

  5. python列表常用操作_Python列表(list)常用操作方法小结

    常见列表对象操作方法: list.append(x) 把一个元素添加到链表的结尾,相当于 a[len(a):] = [x] . list.extend(L) 将一个给定列表中的所有元素都添加到另一个列 ...

  6. python列表字典操作_Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结...

    创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...

  7. python numpy常用操作、Numpy 多维数组、矩阵相乘、矩阵乘以向量

    python numpy常用操作 Numpy基本操作 # 导入numpy import numpy as np # 生成numpy数组 x = np.array([1.0, 2.0, 3.0]) pr ...

  8. python 列表操作详解,Python列表解析操作实例总结

    本文实例讲述了Python列表解析操作.分享给大家供大家参考,具体如下: 列表解析 Python 的强大特性之一是其对 list 的解析,它提供一种紧凑的方法,可以通过对 list 中的每个元素应用一 ...

  9. Python 列表下标操作

    Python  列表下标操作 引用网址: https://www.jianshu.com/p/a98e935e4d46 转载于:https://www.cnblogs.com/zenghanxi/p/ ...

最新文章

  1. 多尺度的CityNeRF: Building NeRF at City Scale
  2. SpringMVC通过注解方式读取properties文件中的值
  3. mac os 快捷键
  4. 触发器无法启动分布式事务。
  5. Winform 打印PDF顺序混乱,获取打印队列
  6. java 类调用情况_java 如何调用类?情况如下
  7. 战网下载CDN重定向失败_卧槽,又开源一个下载神器,利用各种平台下载任意文件...
  8. 华为Mate30 Pro高清渲染图曝光:后置四摄+挖孔全面屏
  9. 卷积神经网络——第一周 卷积神经网络基础——第一部分
  10. 大清铜币到底是否稀缺,有收藏价值吗?
  11. 测试linux内核工具,多种测试linux内核的方法
  12. 浅谈Cglib、Jdk以及ProxyFactory实现动态代理上的区别
  13. 附26页PPT下载|借助用户画像解决电商问题
  14. 南方cass简码识别大全_CASS分类简码
  15. 【学习笔记】matlab进行数字信号处理(一)生成信号及信号的时域频域分析
  16. Abaqus DOC 搜索功能 在 IE浏览器 显示“应用程序已被JAVA安全阻止”解决办法
  17. 佳能600D入门秘籍(三)
  18. 【刷题】BZOJ 1487 [HNOI2009]无归岛
  19. 《平潭史话》之平潭轮渡
  20. 佛珠的颗数有什么讲究

热门文章

  1. 华为联发科可以升级鸿蒙吗,华为鸿蒙系统降临!首批升级手机确定,联发科芯片被放弃?...
  2. fastai学习——第二个问题
  3. 怎么把4399小游戏的代码_25行代码带你爬取4399小游戏数据,看下童年的游戏是否还在...
  4. des和aes相比较有哪些特点_栓流气力输送相比较传统的高速气力输送方式而言,有哪些优势?...
  5. mysql中 视图的优缺点_数据库视图优缺点分析
  6. 腾讯视频怎么设置全速下载模式
  7. 怎样更换UC浏览器的字体?更换UC浏览器的字体的方法
  8. 开发个好的RTMP播放器到底难在哪里?RTMP播放器对标和考察指标
  9. 光功率 博科交换机_如何将交换机40G QSFP+与10G SFP+端口互连?
  10. Java实现XSS防御