Python基础教程:list列表、tuple元组、range常用方法总结

枫铃3年前 (2021-09-30)Python246

list

列表(数组),是可迭代对象,列表是可变的所以列表的方法都是在列表本身更改的。里面看可以放各种数据类型的数据,可存储大量数据
连接列表可以使用 + 或 extend()

a = [1, 3, 2]
b = [3, 4, 5]
print(a+b)
print(a.extend(b))

列表的增:

# append()       可追加各种类型数据,只有一个参数追加数据到列表末尾
# insert()          按照指定下角标位置插入,比如插入位置是1,列表原来的数据就会集体后移,效率低
# extend()       迭代增加,注意增加字典只会增加key值

lst = ['hello', 'kitty', 123, 'qqq']          
lst.append('wangxd')                 输出:['hello', 'kitty', 123, 'qqq', 'wangxd']
lst.insert(1, 'gogogo')                输出:['hello', 'gogogo', 'kitty', 123, 'qqq']
lst.extend({'a': 1, 'b': '2','c': 3})   输出: ['hello', 'kitty', 123, 'qqq', 'a', 'b', 'c']  #增加字典只会增加key值  
lst.extend(['aa', 'bb', 'cc'])          输出:['hello', 'kitty', 123, 'qqq', 'aa', 'bb', 'cc']
lst.extend('qweasd')                  输出:['hello', 'kitty', 123, 'qqq', 'q', 'w', 'e', 'a', 's', 'd']
print(lst)

列表删除:

#pop()          list.pop(1)   唯一的一个有返回值的可以print(list.pop(1) )   。按索引、下标删
#remove()    list.remove('hello')  无返回值,按元素去删
#clear()         list.clear()    清空列表,列表还在内存,没删原列表
#del()          del list   在内存中删除列表,按索引删除del list[1] print(list)  可切片删除del list[:3] 


lst = ['hello', 'kitty', 123, 'qqq'] 
data = lst.pop(1)        #按下标删除 返回删除的内容,可以不接收返回值,原列表更改
lst.remove('hello')       #按元素删除
del lst[1:3]                   #切片删
lst.clear()                    #全部删除

列表改
按照索引改 切片改

#list[2] = 'hello'  把下表2的改为hello
#list[:3] = 'abc'   1先将切片区域元素删除,2按最小元素添加,将添加内容全部增加进去(删除俩个插入三个元素),类似extend。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''

lst = ['王者', '魔兽', 'dnf', '逆水寒', 'cs']
lst[0] = '少雷'
lst[3] = '吃鸡'
lst[1:3] = 'hah'          #会迭代 更改 ['王者', 'h', 'a', 'h', '逆水寒', 'cs']
lst[1:3] = ['跑跑']       #更改先删除remove() 后添加 extend()
lst[1::2] = ['qq华夏', 'qq仙侠传']  #切片修改的时候 步长不是1 注意元素个数否则会报错 ,(相邻的相当于一个元素位)
print(lst)

列表查
1、按索引查 list[3]
2、按切片查 list[:]
3、for循环查 list[]

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
lst = ['1', '2', 3, 4]
for el in lst:
    print(el)
for i in range(len(lst)):
    print(lst[i])

排序

#index      list.index('hello')           返回'hello'在列表中下角标的位置。
#sort         list.sort()                   从小到大排序,没有返回值 直接更改list列表
#sort(reverse=True)                      从大到小排序,列表中必须是相同类型,数字和字符串都可排序
#reverse    list.reverse()                 倒叙,将原列表内容倒置,在原列表中改,无返回值


lst = [7, 4, 6, 3, 4]
lst.sort()                               #正序
lst.sort(reverse=True)         #倒序

列表的嵌套

list = [1, 2, 'hello' , 'kitty', ['oldboy'['66', 'qwe', ['333', 'jjjj']]],]
list[4][1][2][1]   ==>取到'jjjj'

tuple 元组转列表直接–>list()类型转换即可
元组是可迭代的,可接受任何元素,无增删改 ,只有查 只读列表,元组的儿子类是不可以改的,孙子类是可以改的
如果元组中只有一个元素,(元素 , )
tu = tuple() 定义一个空元组

tu = (1,2,True,[1,2,3],'alex')   

tu里是不可以改的,但里面[1,2,3]是可以改的

#index    通过元素找索引
#len()      长度
tu[::2]      索引也可以用 可以循环取值

range
range是一个可迭代的对象 mn是范围顾头不顾腚 q步长 可利用直接去奇数偶数等

1. range(n)                              0 -> n-1
for i in range(10):
    print(i)
2. range(m,n)                            m -> n-1
for i in range(1,10):
    print(i)
3. range(m,n,q)                          m -> n-1 每q个取一个
for i in range(1,10,3):
    print(i)
for i in range(100, 90, -1):
    print(i)

相关文章

python中 5个带key内置函数

1.max取最大值函数...

python调用shell命令之三慷慨法

preface: 忙于近期的任务,须要用到libsvm的一些命令。如在终端执行javasvm_train train_file model_fi...

Python处理正则表达式超时的办法

最近在项目中遇到一个问题,就是需要采用正则匹配一些疑似暗链和挂马的HTML代码,而公司的老大给的正则表达式有的地方写的不够严谨&#...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。