一、列表:

为什么要学列表?

因为字符串存在缺点:

1)      只能存储少量的数据。

2)      数据类型无论索引、切片 获取的都是字符串类型,类型过于单一,转化成它原来的类型还需要进一步转换。

列表是Python的基础数据类型之一:list列表。

列表是以中括号组成,每个元素以逗号隔开的,容器型数据类型。

eg:[1,’zhao’,[1,2,3],Ture,{‘name’:’zhaoruofei’},(22,33)]

列表是一个有序的可以存储大量的数据的数据类型。

1、 列表的切片

  1. l1 = ['赵若飞', 100, 'zhao', '日天']
  2. 列表的切片、索引
  3. ret=l1[0]
  4. ret1=l1[1]
  5. print(ret1,type(ret1))
  6. print(type(l1[:3])) #类型为list。

2、 列表的常用操作

  1. l1 = ['赵若飞', '赵若飞', 100, 'zhao', '日天', '你好', 999]

增:append 在尾部追加(只能单个追加)

  1. l1.append('好好好')
  2. l1.append(23)
  3. l1.append([2,3,4])
  4. print(l1)

insert 插入指定位置

  1. l1.insert(1,'男')
  2. print(l1)

extend 迭代着追加,意为拆分开依次追加

  1. l1.extend('zhao')
  2. l1.extend(['帮',555])
  3. print(l1)

删:pop 按照索引删除,会将删除的元素作为返回值返回

  1. ret=l1.pop(0)
  2. print(l1)
  3. print(ret)

remove 按照元素删除,没有返回值

  1. ret = l1.remove('赵若飞')
  2. print(ret)
  3. print(l1)

  clear 清空列表

  1. l1.clear()
  2. print(l1)

del的使用:

    按照索引删除

    按照切片(可以加步长)删除

删除整个列表

  1. del l1[-2]
  2. del l1[1:]
  3. del l1[::2]
  4. del l1
  5. print(l1)

改:改某个元素

切片改

  1. l1[0]='男神'
  2. print(l1)

切片(步长)改,必须与步长一一对应

  1. l1[:3]='abcd' #迭代添加
  2. print(l1)
  3.  
  4. 切片(步长)改,必须与步长一一对应
  5. l1[1:4:2]='a'
  6. l1[1:4:2]='a2'
  7. print(l1)

其他方法:

Len         获取列表的长度(总个数)

Count     计算某个元素出现的次数

Index      通过元素找到索引,找到第一个就返回,找不到就报错

Sort        从小到大排序

Sort(reverse=True)       从大到小排序

Reverse         反转,不排序

3、 列表的嵌套

练习:l1 = [1, 2, 'taibai', [1, 'alex', 3,]]

  1. 1, l1中的'taibai'变成大写并放回原处。2,给小列表[1,'alex',3,]追加一个元素,'老男孩教育'3,将列表中的'alex'通过字符串拼接的方式在列表中变成'alexsb'
  1. l1 = [1, 2, 'taibai', [1, 'alex', 3,]]
  2. l1[2]=l1[2].upper()
  3. print(l1)
  4.  
  5. l1[3].append('老男孩教育')
  6. print(l1)
  7.  
  8. l1[3][1]=l1[3][1]+'sb'
  9. print(l1)

4、 列表的总结:

Python常用的数据类型,工作中,都是涉及到嵌套的列表居多。增删改查。

5、 何时用列表:

需要大量数据排序的时候。

二、元组(只可以删除整个元组)

是Python中基础数据类型之一,容器型数据类型,存储大量的数据。

()里面的元素以,隔开的数据类型。

元组是不可以进行修改的,只能查询。

元组中存储的都是重要的数据,个人信息等等。

Eg:

  1. tu1=(1,'alex',[1,2,3],True)
  2. #可索引可切片
  3. print(tu1[1])
  4. print(tu1[:3])

元组只能查询,不能更改

索引、切片(步长) 查询 、计算元素出现次数

三、Range(顾头不顾尾)

内置函数,python给你提供的一个功能。

将range视为:可控范围的数字列表。

Eg:

  1. range(1,10)
  2. for I in range(1,10):
  3. print(i)

结果为1 2 3 4 5 6 7 8 9

Range多与for循环配合。

  1. l1 = ['无sir', 'alex', '太白', 100, 5]
  2.  
  3. for i in l1:
  4. print(l1.index(i))
  5.  
  6. for i in range(len(l1)):
  7. print(i)

练习:

1.如下:

  1. li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
  2. a = len(li)
  3. print(a)
  4. li.append('seven')
  5. print(li)
  6. li.insert(0, 'Tony')
  7. print(li)
  8. li[1] = 'Kelly'
  9. print(li)
  10. l2 = [1, "a", 3, 4, "heart"]
  11. li.extend(l2)
  12. print(li)
  13. s = "qwert"
  14. li.extend(s)
  15. print(li)
  16. li.remove('ritian')
  17. print(li)
  18. ret = li.pop(1)
  19. print(li, ret)
  20. del li[1:4]
  21. print(li)
  22. li.reverse()
  23. print(li)
  24. print(li.count('alex'))

2.如下:

  1. li = [1, 3, 2, "a", 4, "b", 5, "c"]
  2. l1 = li[0:3]
  3. print(l1)
  4. l2 = li[3:6]
  5. print(l2)
  6. l3 = li[::2]
  7. print(l3)
  8. l4 = li[1:-1:2]
  9. print(l4)
  10. l5 = li[-1]
  11. print(l5)
  12. l6 = li[-3:-8:-2]
  13. print(l6)

3.如下:

  1. lis = [2, 3, "]], 89], "ab", "adv"]
  2. lis[3][2][1][0] = lis[3][2][1][0].upper()
  3. print(lis)
  4. lis[1] = '
  5. lis[3][2][1][1] = '
  6. print(lis)
  7. lis[3][2][1][2]=101
  8. print(lis)

4.请⽤代码实现:

  1. li = ["alex", "wusir", "taibai"] 利⽤下划线将列表的每⼀个元素拼接成字符串"alex_wusir_taibai"
  1. li = ["alex", "wusir", "taibai"]
  2. li='_'.join(li)
  3. print(li[0]+'_'+li[1]+'_'+li[2])
  4. print(li)

5.利⽤for循环和range打印出下⾯列表的索引。

  1. li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
  1. li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
  2. for i in range(0,len(li)):
  3. print(i)

6.利⽤for循环和range找出100以内所有的偶数并将这些偶数插⼊到⼀个新列表中.

  1. l = []
  2. for i in range(1, 101):
  3. if i % 2 == 0:
  4. l.append(i)
  5. print(l)

7.利⽤for循环和range 找出50以内能被3整除的数,并将这些数插⼊到⼀个新列表中.

  1. l = []
  2. for i in range(1, 51):
  3. if i % 3 == 0:
  4. l.append(i)
  5. print(l)

8.利⽤for循环和range从100~1,倒序打印。

  1. for i in range(100, 0, -1):
  2. print(i)

9.利⽤for循环和range从100~10,倒序将所有的偶数添加到⼀个新列表中,然后对列 表的元素进⾏筛选,将能被4整除的数留下来。

  1. l = []
  2. for i in range(100, 9, -1):
  3. if i % 2 == 0:
  4. l.append(i)
  5. for a in l:
  6. if a % 4 != 0:
  7. l.remove(a)
  8. print(l)

10.利⽤for循环和range,将1-30的数字⼀次添加到⼀个列表中,并循环这个列表,将 能被3整除的数改成*。

  1. l = []
  2. for i in range(1, 31):
  3. if i % 3 == 0:
  4. i = '*'
  5. l.append(i)
  6. print(l)

11.查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾 的所有元素,并添加到⼀个新列表中,最后循环打印这个新列表。 li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]

  1. l=[]
  2. li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]
  3. for i in range(0,len(li)):
  4. li[i]=li[i].strip()
  5. if li[i][0]=='A' or li[i][0]=='a':
  6. if li[i][len(li[i])-1]=='c':
  7. l.append(li[i])
  8. for i in l:
  9. print(i)

第二种方法:

  1. l=[]
  2. li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]
  3. for i in li:
  4. i=i.strip()
  5. if i[0]=='a' or i[0]=='A':
  6. if i[len(i)-1]=='c':
  7. l.append(i)
  8. for i in l:
  9. print(i)

12.开发敏感词语过滤程序,提示⽤户输⼊评论内容,如果⽤户输⼊的内容中包含特殊的字符: 敏感词列表li = ["苍⽼师", "东京热", "武藤兰", "波多野结⾐"]则将⽤户输⼊的内容中的敏感词汇替换成等长度的*(苍⽼师就替换***),并添加到⼀个列表中;如果⽤户输⼊的内容没有敏感词汇,则直接添加到上述的列表中。

  1. l = []
  2. li = ["苍老师", "东京热", "武藤兰", "波多野结衣"]
  3. a = input('请输入评论:')
  4. for i in li:
  5. if i in a:
  6. a = a.replace(i, '*' * len(i))
  7. l.append(a)
  8. print(l)

19-3-5Python中列表、元组、以及range的更多相关文章

  1. 列表,元组以及range

    列表,元组以及range 一.列表(list) 列表是数据类型之一,它有序,可变,支持索引 作用:存储数据,支持的数据类型很多:字符串,数字,布尔值,列表等 # 定义一个列表 lst = ['alex ...

  2. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  3. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  4. python 中列表 元组 字典 集合的区别

    先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...

  5. 列表 & 元组& join & range

    一:列表(增删改查,列表的嵌套,列表的循环) 1)增加 append    (在列表的尾部增加) insert       (插入)   insert(插入的位置,插入的内容) extend      ...

  6. python中列表 元组 字符串如何互相转换

    python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: >>> s = "xxxxx ...

  7. python中列表元组字符串相互转换

    python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: >>> s = "xxxxx ...

  8. 巨蟒python全栈开发-第4天 列表&元组&range

    今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...

  9. python中的基本数据类型之列表,元组

    一.列表 1.什么是列表. 列表是python的基本数据类型之一,用[]来表示,可以存放各种数据类型(什么都能装,能装对象的对象) 列表相比于字符串,不仅可以存放不同类型的数据,而且可以存放大量的数据 ...

随机推荐

  1. vue.js与angular.js的区别(个人)

    刚进入实训 讲师就要发一些什么比较高大上的东西,本人才疏学浅  浅浅的分享一下angularjs 和vue.js的区别.只是简单的理解一下 大神勿喷. 生实训之前学习的angular.js 只是理解了 ...

  2. Thrift-RPC client in Flume

    Get RpcClient from RpcClientFactory with Reflection programming Message or Event definition in Flum ...

  3. 关于Telnet使用

    一.telnet作用 可以使用telnet检查 ip port的连通性 语法: telnet ip port 注意点: 1.使用前先操作系统安装telnet: 2.ip port 中间没有 “:”: ...

  4. API——SendMessageTimeout

    原文:http://www.cnblogs.com/lzjsky/articles/1777848.html 函数功能:该函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,并且,如 ...

  5. 系统变量 %USERPROFILE%

    可以用CMD的SET命令来查看现有的系统变量,“="前的部分用%括起来就是.   常用: %USERPROFILE% =C:\Users\用户名 %SystemRoot% =C:\WINDO ...

  6. python SQLAchemy常用语法

    SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果. ...

  7. HTML 段落p

    可以把 HTML 文档分割为若干段落. HTML 段落 段落是通过 <p> 标签定义的. 实例 <p>This is a paragraph</p> <p&g ...

  8. 基于按annotation的hibernate主键生成策略

    基于按annotation的hibernate主键生成策略 博客分类: Hibernate HibernateJavaJPAOracleMySQL  这里讨论代理主键,业务主键(比如说复合键等)这里不 ...

  9. DevExpress.XtraGrid

    DevExpress.XtraGrid控件使用 该控件类是一个表格控件,但是其具有很多方便而使用的功能,例如可以对记录进行分组,可以再记录的前面加上checkbox,可以将具有相同值的cell 进行合 ...

  10. QT组件与std性能

    https://blog.csdn.net/zy19940906/article/details/53694909