Python 列表list
列表list: [ ]
类似Java中的数组. 通过索引可以取到具体位置上的值.
names = ["ZhangYang","WangGui","LiQiang"]
print(names)
print(names[0])
#取数组中相邻的一些数
names = ["Ada","Sasha","Rose","Luke","Sara"]
print(names[1:3]) #顾头不顾尾, 这样写是取索引为1和2的值.
切片
#取数组最后一位的值
print(names[-1]) #从右向左数第一位. 也可以[-2],就是取倒数第二位的值. #取数组最后两位的值
print(names[-1:-3]) #这样写会报错,因为系统是从左向右数的, 所以-1数完后边已经没有了. print(names[-3:-1]) #正确写法 #取倒数第二个和倒数第三个
print(names[-2:]) #取前两位
print(names[3]) #相当于print(names[0:3]), 0省略了
追加
names.append("Nick")
添加数据并放在中间的位置. / 修改.
names = ["Ada","Sara","Candy","Cathy","Jessica","Diana"] #添加数据插入Sara前面
names.insert(1,"Venus") #想放在哪个位置,参数就写对应的索引. #修改. 把Candy换掉.
names[2] = 'XieDi"
删除
#删除方法1:
names.remove("Ada") #删除方法2:
del names[0] #删除方法3:
names.pop() #默认删掉最后一个值.
names.pop(1) #等同于del names[1]
查找 / 清空
# 查找Ada的位置
print(names.index("Ada"))
print(names[(names.index("Ada")] #根据找到的索引打印出对应位置的值 #当存在重复数据时, 计算重复数据的个数
names = ["Ada","Sara","Cathy","Candy","Diana","Ada"]
print(names.count("Ada")) #清空列表
names.clear()
反转 / 排序
#反转列表
names = ["Ada","Sara","Cathy","Candy","Diana","Ada"] names.reverse() #排序
names.sort()
添加列表 (类似合并数组) / 删掉列表
#合并列表
names2 = [1,2,3,4] names.extend(names2) #删掉列表names2
del names2
extend和append的区别:
a = ['','','']
b = ['','']
c = ['','']
a.extend(b) # 将另一个列表的元素添加到当前列表中
print(a)
print('=====================================')
a.append(c) # 将另一个列表作为一个元素添加到当前列表中
print(a) '''
返回值
['1', '2', '3', '2', '0']
======================================
['1', '2', '3', '2', '0', ['6', '3']]
'''
复制
#复制
name2 = names.copy()
数组包含数组时修改内嵌数组中的数据
# 数组包含数组时修改内嵌数组中的数据 # 方法1 : copy 浅复制
# 数组中内嵌数组的内容在复制时,其实复制的是该内嵌数组的地址,所以当修改该内嵌数组中的数据时,无论原始数组还是复制后的数组,其内嵌数组中的数据都会随之改变.
# 但是原始数组中其他值则是直接将该值指向复制后的数组,所以当原始数组中这些值改变时,复制后的数组对应位置的值保持不变.
names = ["Ada","Jessica","Cathy","Candy","Luke",["ada","Sara","Mika"]] names2 = names.copy()
names[2] = "Lucy"
names[5][0] = "ADA"
print(names) # Cathy被修改成Lucy; ADA改成大写.
print(names2) # Cathy不改变. ADA改成大写 # 方法2: import copy, 调用copy.copy()方法和列表中的copy()一样效果
import copy
names3 = copy.copy(names)
names[0] = "Lucy"
names[5][1] = "ADA"
print(names) # Cathy被修改成Lucy; ADA改成大写.
print(names3) # Cathy不改变. ADA改成大写 # 方法3: import copy, 调用copy. deepcopy()方法. 深copy, 可以达到复制内嵌列表中值的效果
names4 = copy.deepcopy(names)
names[3] = "Lucy"
names[5][0] = "ada"
print(names) # Cathy被修改成Lucy; ADA改成大写.
print(names4) # Cathy不改变. ADA也不改变 # 方法4, 切片的方式实现浅copy
names5 = names[:] # 方法5, 另外一种浅copy的方法
names6 = list(names) # 浅copy在银行公共帐户情形中非常有用. 夫妻二人共开同一个帐户时,每个人取钱都会影响帐户中的总额.
列表的循环 / 跳着打印列表中的值
# 列表的循环
for i in names:
print(i) # 跳着打印列表中的值
print(names[0:-1:2]) # 每隔一个打印一次. 2代表步长.
print(names[::2]) # 0和-1都可以省略,所以写成这样.
Python 列表list的更多相关文章
- python 列表排序
转自http://www.iplaypython.com/jinjie/jj114.html reverse()方法 将列表中元素反转排序,比如下面这样>>> x = [1,5,2, ...
- python列表、元祖、字典
python列表 ['a','1','vs2'] 里面的值可以改 python元祖 ('a','1','css','sdf12') 里面的值不能改 python字典 {'s ...
- Python列表、元组、字典和字符串的常用函数
Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...
- Python 列表
python 列表 列表的特点 1.列表是一种可变的数据类型,这点是跟元组有区别的 2.列表中的值是有序的,并且可存放重复的值,这点跟set有区别的 3.python中的列表类似于其它语言中的数组 4 ...
- python 列表生成器
python 列表生成器 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 一个循环 在C语言等其他语言中,for循环一般是这样的 ...
- [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- Python 列表如何获得一个指定元素所在的下标
在使用Python3.4读取txt数据到列表,由于编码问题,读取到的数据通常会出现'\ufeffX'(x为你想要的数据).这时候如果需要把列表中的数据由字符串转换到数值型的数据的进行数据分析的话就会出 ...
- python列表的常用操作方法
主要介绍了Python中列表(List)的详解操作方法,包含创建.访问.更新.删除.其它操作等,需要的朋友可以参考下. 1.创建列表.只要把逗号分隔的不同的数据项使用方括号括起来即可 List = [ ...
- !!对python列表学习整理列表及数组详细介绍
1.Python的数组分三种类型:(详细见 http://blog.sina.com.cn/s/blog_6b783cbd0100q2ba.html) (1) list 普通的链表,初始化后可以通过特 ...
- (转载)Python 列表(list)操作
(转载)http://blog.csdn.net/facevoid/article/details/5338048 创建列表sample_list = ['a',1,('a','b')] Python ...
随机推荐
- linux内核原子变量与原子位操作API
原子变量: arch/arm/include/asm/atomic.h 定义并初始化 atomic_t v = ATOMIC_INIT(0); 写 void atomic_set(atomic_t * ...
- ZYThumbnailTableView类似于小型阅读器
Demo github地址: https://github.com/liuzhiyi1992/ZYThumbnailTableView 原文地址:http://zyden.vicp.cc/zythu ...
- mysql 无法插入中文
MySQL数据库默认编码已经是utf8了, default-character-set = utf8,可是向数据库中表中插入中文时,却老是出现 ....\xB5\xA5\xD1\xA1 for col ...
- gcc如何生成预编译头文件(.gch)
1 建立comm.h 2 main.c中包含comm.h : #include "comm.h" 3 gcc -o comm.h.gch comm.h(低版本gcc会有bug) 4 ...
- python 3下基于select模型的事件驱动机制程序
它的基本原理就是select/epoll这个function会不断的轮询所负责的所有socket,当某个socket有数据到达了,就通知用户进程.它的流程如图: 当用户进程调用了select,那么整个 ...
- javax.mail
摘抄 example: public static void sendEmail(ConfBean cBean, String filename, String filepath) { try { P ...
- IdentityServer4实战 - AccessToken 生命周期分析
一.前言 IdentityServer4实战这个系列主要介绍一些在IdentityServer4(后文称:ids4),在实际使用过程中容易出现的问题,以及使用技巧,不定期更新,谢谢大家关注.使用过id ...
- 移动App开发基本技术面
1.UI布局 1.1.熟悉系统布局基本机制和使用方法 2.界面效果 2.1.熟悉系统提供的所有界面组件 2.2.熟悉各种功能界面效果的实现途径 2,3.动画等特殊UI效果的实现机制 3.网络请求 3. ...
- How To Install and Use Redis
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-Redis About Redis redis, dev ...
- myeclipse2014鼠标单击后光标位置背景底色为白色太难看,行号显示
Java文件的修改方法: window--Preferences--Java--Editor--Mark Occurences JS文件中点击字符串就会变成白色背景 JS文件字体颜色的修改 windo ...