python入门12 列表list
列表使用率较高,方法也多。
列表的定义
#coding:utf-8
#/usr/bin/python
"""
2018-11-10
dinghanhua
列表
""" '''列表 可变数据类型 序列的一种 使用率比较高'''
li = [1,2,3,4]
li2 = ['mon','tue','wed','thu','fri','sat','sun']
li3 = [(1,2),'string',['list']]
li4 = [[1,'apple'],[2,'banana'],[3,'pear']]
列表的操作:
'''索引'''
print(li[0],li[1],li3[-1]) for l in li2:
print(l,end = ' ')
for index in range(len(li2)):
print(li2[index],end = '\t')
'''切片'''
print(li[:])
print(li2[::2]) #每2个取一个
print(li2[:-2])
print(li2[1:5])
print(li2[-2:-1])
print(li2[::-1]) #翻转
print(li2[::-2])
'''批量修改、插入、删除数据'''
li2[:5] = ['周一','周二','周三','周四','周五']
print('批量修改之后:',li2)
li2[5:] = []
print( '批量删除之后:',li2)
li2[5:-1] = ['周六','周日']
print( '批量追加之后:',li2)
li2[5:5] = ['随便插入']
print( '批量插入之后:',li2)
li2[:] = []
print( '清空列表:',li2)
li2[:] = ['周一','周二','周三','周四','周五']
'''删除数据'''
del li2[4] #删除索引对应的值
print(li2)
del li2 #删除列表引用
'''列表常用函数'''
li = ['mon','tue','wed','thu','fri','sat','sun'] #最大max 最小min
print('max=%s,min=%s'%(max(li),min(li))) li.append('none')
print('append 追加一个元素 :',li) print('mon的个数',li.count('mon')) li.insert(1,[1,2]) #插入
print(li) print(li.index([1,2])) #列表中第一个匹配值的索引 ele = li.pop() #弹出最后一个元素并返回
print(ele,li) ele = li.pop(1) #弹出索引对应的元素
print(ele,li) li.extend(['','']) #追加列表
print(li) li5 = li.copy() #复制
print(li5,li) li5.remove('wed') #删除对象
print('remove:',li5) li5.reverse() #翻转
print('reverse:',li5) li.sort() #排序
print('sort:',li)
li.sort(reverse = True)
print('sort(reverse):',li)
li.sort(key = len)
print('sort(key=len),',li) #sort改变原list
print('sorted函数',sorted(li,key = len,reverse = True)) #sorted不改变原list li.clear() #清空
print(li)
'''*列表复制多个 +列表连接'''
linew = li * 2
print(linew) linew = li + li3
print(linew) linew += ['test']
print(linew)
'''列表生成器'''
li = [1,2,3,4,5,6] li2 = [x**3 for x in li] #list的每个值的三次方
print(li2) li3 =[x**2 for x in li[1::2]] #偶数位置元素的平方,从index=1开始取,每隔2位取一个
print(li3) li1 = [1,2,3,4]
li2 = [5,6,7,8]
li3 = [ x+y for x in li1 for y in li2 if x%2==0 and y%2==0 ]#li1,li2中偶数相加组成的列表
print(li3)
'''多维列表'''
li = [['title','pubdate','author'],['python','2018-09-01','Praul']]
#取author的值
if 'author' in li[0]:
index = li[0].index('author')
author = li[-1][index]
print('author:',author)
'''zip() 将多个可迭代对象的值挨个取出打包成的tuple,返回tuple的list'''
li = [['title','pubdate','author','desc'],['python','2018-09-01','Praul']]
li_zip = zip(li[0],li[1])
print(li_zip)
for ele in li_zip:
print(ele)
'''map(func,iter) 可迭代对象每个元素执行func函数 '''
li_map = map(max,li[0],li[1])
print(type(li_map))
for ele in li_map:
print(ele)
'''类型转换'''
#list to tuple
li = ['','','','']
tu = tuple(li) #list to string
print(tu)
str1 = ''.join(li) #列表项的连接
print(str1)
str2 = str(li)
print(str2) #整个列表作为字符串 # string to list
li_str = list(str1)
print('str to list:',li_str) li_str2 = list('[1,2,3,4]') #每个字符均转成元素
li_str3 = eval('[1,2,3,4]') #保持原样转成list
print(li_str2)
print(li_str3)
the end!
python入门12 列表list的更多相关文章
- python入门之列表
1.列表基本格式# list 类 列表li = [1, 2, 3, "sb", ["时间",[9, 10], "huang"], 6, 7, ...
- python入门-操作列表
1 Python根据缩进来进行判断代码行与前一个代码行的关系 for name in names: print(name) names = ['baker','david','philp','rose ...
- Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice)
Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Py ...
- 大爽Python入门教程 2-2 序列: 字符串、元组与列表
大爽Python入门公开课教案 点击查看教程总目录 序列 序列(sequence): 顾名思义,有序的排列. 有序排列的一串数据. 一种容器,容器内成员有序排列. python的字符串str,元组tu ...
- 大爽Python入门教程 2-3 字符串,列表,字典
大爽Python入门公开课教案 点击查看教程总目录 除了通用的序列方法, 列表和字符串还有些自己的专属方法. 后面介绍有些是英中文对照介绍(英文来自官方文档), 便于大家更深入的去理解其意思. 灵活的 ...
- python入门(12)dict
python入门(12)dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度. 举个例 ...
- python入门学习:3.操作列表
python入门学习:3.操作列表 关键点:列表 3.1 遍历整个列表3.2 创建数值列表3.3 使用列表3.4 元组 3.1 遍历整个列表 循环这种概念很重要,因为它是计算机自动完成重复工作的常 ...
- python入门学习:2.列表简介
python入门学习:2.列表简介 关键点:列表 2.1 列表是什么2.2 修改.添加和删除元素2.3 组织列表 2.1 列表是什么 列表,是由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...
- 『Python基础-12』各种推导式(列表推导式、字典推导式、集合推导式)
# 『Python基础-12』各种推导式(列表推导式.字典推导式.集合推导式) 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的 ...
随机推荐
- 再谈java枚举 ENUM
[From] http://www.cnblogs.com/rollenholt/archive/2012/11/27/2790402.html 没有枚举之前: 在没有枚举之前,我们想列举一些相关的常 ...
- 6.centos7 gitblit
1,安装注意事项 1)必须将gitblit安装在/opt/gitblit这个目录下,因为 服务启动的脚本里面默认就是这个路径 如果不按照这个路径安装需要修改脚本 mkdir -p /opt/gitbl ...
- 转 .net数据类型
.net 数据类型 short s=0; s = s + 1; 和short s=0; s += 1; 这两个表达式有什么区别,会报什么错误? 有区别吗??大家要想想呢还是要测试一下啊,我选择测试 ...
- my32_ error 1872 Slave failed to initialize relay log info structure from the repository
重启了实例后,slave进程无法开启 Last_SQL_Errno: Last_SQL_Error: Slave failed to initialize relay log info structu ...
- oracle 基础知识(九)----SQL解析
一,解析过程 二,硬解析,软解析,软软解析 01,硬解析 将SQL语句通过监听器发送到Oracle时, 会触发一个Server process生成,来对该客户进程服务.Server process得到 ...
- 03-struts2获得servetAPI
1 原理 三个域合一的时候相同的键值对以小的域为准.ActionContext 对象创建:每次请求的时候都会创建一个与请求对应的 ActionContext 对象.ActionContext 销毁:请 ...
- pat1003. Emergency (25)
1003. Emergency (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue As an emerg ...
- "Sorry this application cannot run under a virtual machine" Error
错误: 运行一个程序是出现了 “sorry this application cannot run under a virtual machine” 错误. 如何解决: 控制面板-->卸载程序- ...
- Cookie的遍历
全Cookie遍历 思路: 1.遍历主键 2.遍历每个主键下的子健 遍历语句: Foreach (string _key in request.cookie.Allkeys) { //对主键遍历... ...
- 03.枚举和string以及int类型之间的转换
练习1: 将枚举类型强转成int类型 namespace _04.枚举类型的练习01 { //声明一个QQState类型的枚举 public enum QQState { OnLine, OffL ...