python学习笔记_列表,元组

使用了几天python shell来学习python真心蛋疼,所以今天就换成了pycharm来搞.瞬间高大上了哈哈哈....

一.列表

列表的作用是什么呢,顾名思义,就是用来存储数据的啦...接下来就来看看列表单的用法

1.定义,创建列表

strs = ["hello","python"]
print(strs)

在这里可以看出来 列表存储纯字符串是一点问题也没有的.接下来试试数字类型的元素

nums = [1,2,3,4,5]
print(nums)

现在看来存储数字也是没有问题的.接下来试一下,字符串加数字

str_num = ["wo","shi","number",1]
print(str_num)

ok,看来字符串和数字混合存储也是没有问题的.接下来试一下列表里面可不可以存储列表,也就是列表的嵌套

list = ["hello","list"]
father_list = [list,"ni","zui","niu","you are number",1]
print(father_list)

我们使用列表的目的不仅仅是存储数据,接下来试一下列表的数据查询.以及列表特有的方法

1.查询  find

首先定义一个列表并且存储一些数据,定义个什么好呢....呃,就以我上班路线为例

go_to_work = ["get up","walk","metro","bus","walk","work"]

现在我想访问第二个metro应该怎么来用呢

print(go_to_work[1])

通过验证发现python中的列表用法和java中的数组极其相似

仅仅通过下表来查询元素还有别的办法来进行查询吗,假如我想知道我起床以后做了哪些事情呢,应该怎么取

so在这里就要引入一个名词就是  切片   使用切片来试一下

print(go_to_work[1:5])
通过结果看出来,切片的下表取值规律就是,左包括右不包括,在这里跟java字符串的截取字符串方法是相同的都是左包括右不包括.

ok,看来整数切片是ok的如果用负数呢

print(go_to_work[-1:3])#ok,取到的是一个空的列表,看来第一个下标是负数没有什么意思,
print(go_to_work[1:-1])#取到的值是['walk', 'metro', 'bus', 'walk']没有第一个和最后一个,
print(go_to_work[1:-2])#取到的值是['walk', 'metro', 'bus']看来第二个下标,是酱紫的


负号就是代表反方向的意思,负号后面的数字就是代表切片到倒数第几个数字,同样是左包括右不包括

假如第二个下标我不写会如何呢

print(go_to_work[0:])取到的是:['get up', 'walk', 'metro', 'bus', 'walk', 'work']
看来不写就是默认取到最后一个值,(在此时没有右不包括这个东东)

第一个下标不写呢

print(go_to_work[:5])ok,第一个下表不写代表的是默认从开头取值
假如第一个和第二个都不写呢:虽然这样没有什么卵用,但是作死星人就像尝试尝试
print(go_to_work[:])#ok,将整个列表取了出来,

假如在取值的时候还有第三个参数呢

print(go_to_work[0::2])#这个可以理解为从列表的第一个元素开始取值,隔一个取一个,在这里这里面的2就是步长的意思
print(go_to_work[0::9])#假如步长超过了列表中元素的总个数,就会嗝屁,只会取到第一个元素.
print(go_to_work[2::-1])#取到值是
print(go_to_work[2:1:-1])#ok,试了几遍之后终于弄明白,第三个参数是负数的意思了,若第三个是负数

就是从后往前开始取值,第一参数开始往前,就意味着第二个参数必须比第一个参数要小,如果第二个参数不写默认就是取到下标为0

增加append

增加在go_to_work 里添加一个 吃

go_to_work.append("eat")
print(go_to_work)  #使用append方法默认将元素添加到最后
go_to_work.insert(5,"toilet")
print(go_to_work)#insert方法是酱紫滴:第一个参数是想要插入的位置,第二个参数是要插入的内容
这个可以酱紫理解插入的位置是直接怼到对应的下表上,把其他元素都往后挤了一位

删除

del通过下标删除

del go_to_work[5]
print(go_to_work)

通过下表删除使用pop方法

go_to_work.pop()
print("pop 为空删除",go_to_work)#pop参数为空时代表删除最后一个元素

通过pop指定下表删除

 element_zero = go_to_work.pop(0)
 print(go_to_work) 
 print(element_zero)#pop方法要注意的就是pop方法会将删除的值进行返回

remove方法

go_to_work.remove("eat")
print(go_to_work)

修改元素

修改,简单办法一就是通过下表查到元素之后重新进行赋值

例如我将go_to_work 的第一个元素修改为 go to bed

go_to_work[0] = "go to bed"
print(go_to_work)

列表的 extend

b = [1,2,3,4]

print(go_to_work.extend(b))#呃,如此看来extend没有返回值,d

go_to_work.extend(b)
#如此看来在print(go_to_work.extend(b))中extend也是进行了作用而不是报错
print(go_to_work)
print(b)

copy方法

#列表复制方法很简单 copy自己去试
go_to_work_copy = go_to_work.copy()
print(go_to_work_copy)

count 方法

统计某个元素的个数,同时返回一个整数

i = go_to_work_copy.count("get up")
print(i)

index方法

通过index查找元素对应的下标,此方法只返回查找到的第一个元素的下标,假如有两个相同的元素,

如果非要知道第二个相同的字符串的下标,可以用切片分隔第一个index的返回值,也可以遍历查找.

i = go_to_work.index("walk")
print(i)

元组

元组的表示方法

go_to_work1 = ("get up","walk","metor","bus","walk","work")

print(go_to_work1)  #通过.可以看到元组中只有两个方法就是count,index  所以元组是只读的

len方法

len方法:统计包含有多少个元素

#创建一个列表
li = ["hello","world","how","are","you"]
print(li,len(li))

len方法:不仅列表有,元组有,字典有,集合也有此方法。

你可能感兴趣的:(python)