博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础四-列表与元祖
阅读量:4966 次
发布时间:2019-06-12

本文共 3148 字,大约阅读时间需要 10 分钟。

列表:python基础数据类型之一:其他语言中也有列表的概念,js 数组,可索引,可切片,可加步长
li = ['alex', 100, True, [1, 2, 3], {
'name':'太白'},(22, 33)]s1 = '[1,2,3]'
列表可以存储大量的数据32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。 第一:索引,切片,切片+步长。
li = ['alex', 100, True, [1, 2, 3], {'name':'太白'},(22, 33)]print(li[0],type(li[0]))print(li[1],type(li[1]))print(li[2],type(li[2]))print(li[3],type(li[3]))print(li[:4],type(li[:4]))print(li[::2],type(li[::2]))print(li[-1:-4:-2],type(li[-1:-4:-2]))print(li[-1:2:-2],type(li[-1:2:-2]))
第二:增删改查,其他方法。 增:
l1 = ['alex', 'wusir', 'taibai', 'egon', '景女神', '文周老师', '日天']append  追加l1.append('小温老师')print(l1.append([1, 2, 3]))print(l1)name_list = ['赵三', '里斯']while 1:    username = input('请输入新员工姓名:').strip()    if username.upper() == 'Q' : break    name_list.append(username)print(name_list)insert 插入l1.insert(1,'宝元')print(l1)extend  迭代着追加l1.extend('abc')# l1.extend([111,222,333])l1.extend(['alex','sb'])print(l1)
删除 pop 按照索引去删除
ret = l1.pop(0)print(ret) # 返回值print(l1)
remove 按照元素删除
l1.remove('alex')print(l1)
clear 清空
l1.clear()print(l1)
del 可以按照索引删除
del l1[0]print(l1)
可以按照切片删除(可以加步长)
del l1[:2]del l1[3:]del l1[1::2]print(l1)
可以在内存级别删除整个列表
del l1print(l1)
改 按照索引改 l1[2] = '男神' l1[-1] = '泰迪' 按照切片(加步长)     按照切片 l1[:2] = 'sbsbsb' l1[:4] = [11,22,33,44,55,66,77]     按照切片 + 步长  一一对应 l1[:3:2] = 'af' print(l1) 查 索引,切片,切片+步长 for 循环 for i in l1:     print(i) 其他方法 print(len(l1))  # 查询总个数 print(l1.count('alex')) # 某个元素出现的次数 index 通过元素找索引,注意在列表中没有字符串的find方法找索引 print(l1.index('taibai')) sort 列表的排序 l2 = [5, 6, 7, 1, 4, 3, 2, 9] l2.sort()  # 从小到大 print(l2) l2.sort(reverse=True)  # 从大到小 print(l2) l2.reverse()  # 反转 print(l2) 第三:列表的嵌套。 1, 找到alex的e元素。
l3 = ['alex', 'wusir', ['taibai', 99, 'ritian'], 20]s1 = l3[0]print(s1)print(s1[2])s2 = l3[0][2]print(s2)
2, 将wusir变成大写。
w1 = l3[1]w2 = w1.upper()l3[1] = w2print(l3)l3[1] = 'WUSIR'l3[1] = l3[1].upper()print(l3) 
3, 给此列表['taibai',99,'ritian'] 追加一个元素,'文周'
1 print(l3[2])2 l3[2].append('文周')3 print(l3)
4,将 'taibai' 首字母大写。
1 print(l3[2][0])2 s1 = l3[2][0].capitalize()3 # print(s1)4 l3[2][0] = s1
l3[2][0] = l3[2][0].capitalize() l3[2].append(666) l3[2][0].capitalize() print(l3)
5,将 99 通过数字加1 的方式变成100,并放回原处。
1 l3[2][1] = l3[2][1] + 12 l3[2][1] += 13 print(l3)
元组:只读列表,只允许查询,不允许增删改
tu1 = ('alex', 100, True, [1, 2, 3], {
'name':'太白'},(22, 33))
索引,切片,切片+步长 print(tu1[0]) print(tu1[:3]) # for 循环 for i in tu1:     print(i) index,len,count 应用场景: 一些非常重要的数据,不允许所有人修改的,放在元组中。 tu1[3].append(666) tu1.append(666) 错的 元组 儿子不能改,孙子可能可以改。 print(tu1) range 自定制的 数字范围的 可迭代对象类比成列表 range(1,101) print(range(1,101)) range() 一般和for 循环结合使用。

 

1 for i in range(1,11): 2     print(i) 3  4 for i in range(1,20,2): 5     print(i) 6  7 for i in range(1,101,2): 8     print(i) 9 10 for i in range(10,1,-1):11     print(i)

 

 

 

l1 = ['alex', 'alex', 'taibai', 'egon', '景女神', '文周老师', '日天']

方法一:不好 for i in l1:     print(l1.index(i)) 方法二: for i in range(0,len(l1)):     print(i) in 与not in 的应用
s1 = 'alex'l1 = ['alex', 'alex', 'taibai', 'egon', '景女神', '文周老师', '日天']print('a' in s1)print('al' in s1)print('alx' in s1)print('alex' not in l1)print(['alex','alex'] in l1)

 

转载于:https://www.cnblogs.com/qilin610/p/9465168.html

你可能感兴趣的文章
dmidecode查看设备硬件信息
查看>>
Day33、基于udp的套接字、socketserver模块、关于进程的简单介绍
查看>>
2.2计算圆柱体的体积.py
查看>>
HDU 3466 Proud Merchants
查看>>
java list 容器的ConcurrentModificationException
查看>>
前端 HTML 注释
查看>>
前端 HTML标签属性
查看>>
glassfish的启动
查看>>
513. 找树左下角的值
查看>>
asp mvc 中重写JsonResult,解决Json返回值序列化问题
查看>>
微信开发-微信内置浏览器的Javascript API
查看>>
React学习之坑(二)- 基础入门
查看>>
JavaScript - flex布局测试案例【flex】主轴方向
查看>>
JAVA之nio
查看>>
洛谷P2858奶牛零食 题解
查看>>
ASP.NET Web API中把分页信息放Header中返回给前端
查看>>
codeforces571C. CNF 2
查看>>
Windows环境下的NodeJS+NPM+Bower安装配置
查看>>
[004]多维数组和指针
查看>>
MySQL 基础语句的练习
查看>>