python基础数据类型--列表(list)
python基础数据类型--列表(list)
列表是我们在后面经常用到的数据类型之一,通过列表可以对数据类型进行增、删、改、查等操作
一列表的增、删、改、查
1增:
1.1增加到最后 append()
- li = ['alex','wusir','egon','女神','taibai']
- li.append('xiaoqiang')
- print(li)
1.2按索引位置添加 insert()
- li = ['alex','wusir','egon','女神','taibai']
- li.insert(3,'xingxing')
- print(li)
1.3迭代的去增加 extend()
- li = ['alex','wusir','egon','女神','taibai']
- li.extend('gaoya')#最终添加为元素
- print(li)
2删
2.1按索引删除 pop()
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] li.pop( 0 ) print (li) |
2.2按元素删除remove()
- li = ['alex','wusir','egon','女神','taibai']
- li.remove('taibai')
print(li)
2.3清空clear()
- li = ['alex','wusir','egon','女神','taibai']
- li.clear()
- print(li)
2.4直接删除del()
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] del li print (li) 会报错,因为被删除了 |
2.5切片删除del()
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] del [ 2 :] print (li) |
3改
3.1按索引去改
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] li[ 0 ] = 'xiaoqiang' print (li) |
3.2按切片去改
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] li[ 0 : 2 ] = 'learnpython' print (li) |
4查
4.1 for循环
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] for i in li: print (i) |
4.2切片去查
1
2
3
|
li = [ 'alex' , 'wusir' , 'egon' , '女神' , 'taibai' ] l1 = li[ 0 : 2 ] print (l1) |
二、列表的排序
- li = [1,3,4,5,7,6,8,9,2]
- li.sort() #正向排序
- li.sort(reverse=True)#倒向排序
- li.reverse() #反转
- print(li)
三、列表是嵌套
- li = ['taibai','武藤兰','苑昊',['alex','egon','89'],'23',]
- lan=li[1][2] #找到兰字
- print(lan)
四、join和split
join()方法
S.join():其中S是字符串连接符,join中参数必须是可迭代对象,join()方法输出可迭代对象的每一个元素,并用连接符将每一个元素连接
- s = 'ilovepython'
- l = ['C','Java','C++','Ruby','PHP','Python']
- print('_'.join(s))
- # >>> 'i_l_o_v_e_p_y_t_h_o_n'
- print('_'.join(l))
- # >>> 'C_Java_C++_Ruby_PHP_Python'
split()方法
字符串和列表之间的转换
- s = 'i_l_o_v_e_p_y_t_h_o_n'
- print(s.split('_'))
- # >>> ['i', 'l', 'o', 'v', 'e', 'p', 'y', 't', 'h', 'o', 'n']
五、range()
- # range:相当于都是数字的列表 [0,1,2,3,4.....,99]
- # range(起始值,终止值)
- for i in range(0,100):
- print(i)
- # 默认起始值不写默认为0
- for i in range(100):
- print(i)
- # 同索引一样,range也可以加步长,加步长的话默认的0起始值就不可以省略
- for i in range(0,100,2):
- print(i)
- for i in range(100,0,-2):
- print(i)
六、 enumerate()方法------有索引有值
枚举----对于一个可迭代的/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时或得索引和值
- lst = ['python','java','c','ruby','Go']
- for i in enumerate(lst):
- print(i)
- for index, name in enumerate(lst, 1): ####---1 是起始位置,可以修改100等等
- print(index, name)
七、 深浅copy()简析
- # 普通赋值运算
- lst_1 = ['Python','Java',['Ruby','PHP','C++']]
- lst_2 =lst_1 # lst_2 = lst_1[:] 同理
- print(lst_1)
- print(id(lst_1))
- print('*'*10)
- print(lst_2)
- print(id(lst_2))
- # >>> ['Python','Java',['Ruby','PHP','C++']]
- # >>> 18623368
- # >>> **********
- # >>> ['Python','Java',['Ruby','PHP','C++']]
- # >>> 18623368
- # 浅copy()方法:第一层创建的是新的内存地址,而从第二层开始,指向的都是同一个内存地址,所以,对于第二层以及更深的层数来说,保持一致性。
- lst_1 = ['Python','Java',['Ruby','PHP','C++']]
- lst_2 =lst_1.copy() # lst_2 = lst_1[:] 同理
- lst_1[2].append('new_lanuage')
- print(lst_1,id(lst_1))
- print('*'*10)
- print(lst_2,id(lst_2))
- # >>> ['Python', 'Java', ['Ruby', 'PHP', 'C++', 'new_lanuage']] 12001800
- # >>> **********
- # >>> ['Python', 'Java', ['Ruby', 'PHP', 'C++', 'new_lanuage']] 12015048
- # 深copy()方法:对于深copy来说,两个是完全独立的,改变任意一个的任何元素(无论多少层),另一个绝对不改变。
- import copy
- lst_1 = ['Python','Java',['Ruby','PHP','C++']]
- lst_2 = copy.deepcopy(lst_1)
- lst_1[2].append('new_lanuage')
- print(lst_1,id(lst_1))
- print('*'*10)
- print(lst_2,id(lst_2))
- # >>> ['Python', 'Java', ['Ruby', 'PHP', 'C++', 'new_lanuage']] 12533000
- # >>> **********
- # >>> ['Python', 'Java', ['Ruby', 'PHP', 'C++']] 12533512
python基础数据类型--列表(list)的更多相关文章
- Python基础数据类型-列表(list)和元组(tuple)和集合(set)
Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...
- python基础4 列表和元组
一. 列表列表:python基础数据类型之一:其他语言中也有列表的概念,js 数组,可索引,可切片,可加步长li = ['hello', 100, True, [1, 2, 3], {'name':' ...
- Python基础数据类型-字符串(string)
Python基础数据类型-字符串(string) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版 ...
- python基础数据类型考试题
Python基础数据类型考试题 考试时间:两个半小时 满分100分(80分以上包含80分及格) 一,基础题. 1,简述变量命名规范(3分) 2,字节和位的关系 ...
- python基础之列表list元组tuple
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...
- python 基础数据类型之list
python 基础数据类型之list: 1.列表的创建 list1 = ['hello', 'world', 1997, 2000] list2 = [1, 2, 3, 4, 5 ] list3 = ...
- Python基础数据类型-字典(dict)
Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...
- Python基础数据类型题
Python基础数据类型 题考试时间:三个小时 满分100分(80分以上包含80分及格)1,简述变量命名规范(3分) 1.必须是字母,数字,下划线的任意组合. 2.不能是数字开头 3.不能是pytho ...
- Python基础数据类型之字符串
Python基础数据类型之字符串 一.Python如何创建字符串 在python中用引号将一些文本包起来就构成了字符串(引号可以是单引号.双引号.单三引号,双三引号,它们是完全相同的) >> ...
随机推荐
- HDU 5564:Clarke and digits 收获颇多的矩阵快速幂 + 前缀和
Clarke and digits Accepts: 16 Submissions: 29 Time Limit: 5000/3000 MS (Java/Others) Memory Limi ...
- Uart学习笔记
分享一个蛮好的链接:https://blog.csdn.net/wordwarwordwar/article/details/73662379 今天在看的资料是S家的DW_apb_uart的官方文档. ...
- 在PyCharm中自动添加文件头、时间日期等信息
初次安装使用PyCharm,在新建.py文件时会发现文件头并没有什么信息,因此,使用模板会比较方便.方法如下: 1.打开PyCharm,选择File--Settings 2.依次选择Editor--- ...
- js对数字的处理:取整、四舍五入、数字与字符串的转换
取整.四舍五入 向下取整Math.floor() 向上取整Math.ceil() 四舍五入Math.round()) 保留有效数位n.toFixed() 产生大于等于0小于1的随机数Math.rand ...
- [RoarCTF2019]forensic
拿到raw文件拖到kali里,首先看镜像信息. volatility -f /root/mem.raw imageinfo 用建议的profile,Win7SP1x86.先查看下内存中的进程 vola ...
- elasticsearch mapping简单介绍
这两天一直在看elasticsearch相关的内容,看到mapping这一块,就折腾了下. 一般情况下,我们不需要对elasticsearch的mapping进行设置,但如果希望对索引使用自定义的管理 ...
- Node.js之EventEmiter
参考: 1. Node.js之EventEmiter讲解 2. Node.js之events事件 3. 在线运行node.js代码 Node.js主要API使用异步事件驱动模型,异步I/O操作完成时, ...
- linux系统登陆过程
一.物理直连登陆过程 初始化进程init 会根据直接连接的字符终端设备,打开getty程序,并关联在字符终端设备上tty1/2/3/4/5/6/7....上,在不同的终端设备上提示用户输入信息,等待终 ...
- java并发之CopyOnWriteArraySet
java并发之CopyOnWriteArraySet CopyOnWriteArraySet是基于CopyOnWriteArrayList实现的,持有CopyOnWriteArrayList的内部对象 ...
- Pytorch 分割模型构建和训练【直播】2019 年县域农业大脑AI挑战赛---(四)模型构建和网络训练
对于分割网络,如果当成一个黑箱就是:输入一个3x1024x1024 输出4x1024x1024. 我没有使用二分类,直接使用了四分类. 分类网络使用了SegNet,没有加载预训练模型,参数也是默认初始 ...