今天给大家分享一下python数据结构:列表和元组用发总结。
在文章开始之前,想给大家分享一下,最近在后台,有很多伙伴私信我说,现在也是在学习python,但是呢没有一个好的学习规划和路线,学着很吃力,所以呢,今天在知识点开始之前,给大家讲下,自学python的几大弯路,看看其中是不是有你~!
弯路一:盲目的去学
当初我在对于python这个行业什么都不了解的情况下,比如:不知道未来发展趋势,不知道学习python应该注意哪些初始问题,不知道具体的学习规划学习路线等等,一味的买书看书,看视频,到了中期阶段萌生放弃的想法,和主要是因为觉得自己越学越迷茫,也知道自己这样学找不到工作,这是初学者最大的误区。
弯路二:孤军奋战
当初在学python的时候,从来都没有跟别人交流过,就感觉活在自己的世界里,总认为自己什么都可以搞定,而且很多知识不会了,直接就过去了,并没有深究,而这种学习态度也注定了我的学习是失败,学习python一定要有讨论的过程,只有跟不同的交流才能了解到你自己不知道的东西。
弯路三:没人指点
python对于我来说是从来不了解的行业,而我当时从来没有想过找一个这个行业比较厉害的人去请教下,现在我终于认识到了一点什么叫“方法不对,努力白费”所有的python大神都有自己的学习方法,而学python的学习也基本是一致,而对于一个什么都不懂的初学者根本不会知道怎么学,这也是造成失败的最直接原因。所以学python一定要有人指点,如果感觉自己找不到人。
弯路四:盲目看书
对于新手来说,学习一个技能肯定是买书看书,但是后来我才实践的证明,对于一个啥都不懂的初学者来说看书基本可以成为无用的,因为这样的结果就势必会造成大多数人的情况:能看懂,但是永远不会写,这就是我最初出现的问题,非常烦人,所以建议初学者少看书,多动手,必须弄清楚python的效率学习方法。
弯路五:到处搜集视频
好像大家都有一个毛病,就是到处搜集资源,云盘里有很多东西,但是基本是从来都不看,所以说视频在精不在于多,我当时自学python的时候也搜集了各种视频,这里看看,那里看看,学的一点都不系统,而且学了之后也找不到工作,视频一定要最新的,python更新的快,旧的是不可以的,如果没有可以加我上面的python交流裙下载,找管理要就可以。
弯路六:代码规范
因为最初还有自己一个人,没人告诉,我最初编写代码的时候不知道写代码的基本规范,所有的代码全部是顶格写,自己看的时候都费劲,后来有人告诉我写代码应该注意规范,我才明白。
这就是我整理的几大弯路,不知道这其中是不是有你,如果有你,你是否有想过试着改变呢?好,言归正传开始分享今天的知识点。
python内置了很多有用的数据结构,今天我们先来介绍2大法宝,列表和元组.(马上要到中秋节了,这个元组让我想起了元祖雪月饼)
好吧有点跑题了,我总结了一下列表的十几招的基本用法,基本上你想要的这里都有了.
1.list列表
这个是python里面用的最多最常用的数据类型,可以通过下标来访问,可以理解为java或者c里面的数组.但是功能比数组强大n倍,list可以放任意数量的python对象,可以是字符串,字符,整数,浮点等等都可以,而且创建,添加,删除也很方便.
1)创建list //list内部的对象可以是字符串,字符,数字,支持混搭
alist = ['apple', 100, 0.01, 'banana','a','b','c']
2)访问list //直接通过下标去访问
>>>print(alist[0])
'apple'
3)列表的切片 //通过切片来取列表中的一部分
>>>print(alist[4:6])
['a', 'b']
4)列表的嵌套 //列表支持嵌套,就是列表里面可以套列表,甚至套字典,元组等
blist=[100,200,['aaa','bbb','ccc']]
>>>print(blist[2][0])
aaa
5)列表的插入//内置函数append,insert
wxgzh:python学习部落。
6)列表的删除//内置remove,pop函数
7)列表支持*,+
list1=[1,2,3]
list2=[100,200,300]
list3=list1+list2
print(list3)
>>>[1, 2, 3, 100, 200, 300]
list4=['a','b','c']
list5=list4*3
print(list5)
>>>['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']
8)列表的排序//内置了sort函数非常方便,通过传入reverse为true或者false来升序或者降序排列
9)计算列表的长度 //利用内置函数len()
alist=[1,2,3,4,5]
print(len(alist))
>>>5
10)计算列表里面的最大值,最小值
alist=[1,2,3,4,5]
print(min(alist))
>>>1
print(max(alist))
>>>5
当然你若要想知道,最大的前2个数,或者最小的2个数,需要用heapq模块,以后在python黑魔法里面会详细讲.
11)列表的扩展 //用内置extend函数,看起来和+差不多,其实区别在于+是返回一个新的列表,而extend是直接修改了列表
alist=[1,2,3]
b=[4,5,6]
alist.extend(b)
print(alist)
>>>[1, 2, 3, 4, 5, 6]
12)查找列表中某一个元素的索引//内置函数index
alist=['this','is','a','very','good','idea']
print(alist.index('very'))
>>>3
13)统计某个元组在列表里面的次数,内置函数count
alist=['to','do','or','not','to','do']
print(alist.count('to'))
>>>2
以上就是常见的list的用法,注意list是支持重复元素的,就是list里面可以有2个同样的元素
比如:
clist=[100,200,'apple','peach','apple']
print(clist)
>>>[100, 200, 'apple', 'peach', 'apple']
后面的教程会讲如何一行代码去掉重复的元素
2.元组
元组和列表一样,也是一种序列,唯一的不同在于不能修改
1)元祖的创建
atuple=(1,2,3)
print(atuple)
>>>(1, 2, 3)
有一点要注意,当元组里面只有一个元素的时候,一定要加, 比如(100,)
2)元组的用法和列表一模一样
很多初学者会问,既然用法和列表一样,为啥还要发明元组,原因在于
有一些特殊的场合需要不可变序列,比如后面会讲道的数据结构字典,必须要用不可变序列作为键值,而列表不行。
有一些内建的函数的返回值,也必须是元组.
好看完上面的内容,是不是觉得python好神奇,比起c++,java方便太多了,列表这一个数据结构就内置了这么多的函数,太爽了.