一、python列表

  • 序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,往后数的最后一个为-1依此类推。
  • Python有6个序列的内置类型,但最常见的是列表和元组。
  • 序列都可以进行的操作包括索引,切片,加,乘,检查成员。
  • 此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
  • 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
  • 列表的数据项不需要具有相同的类型
  • 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

  1.1字符串转列表

# list1 = [str(i) for i in "here"]
# list2 = [str(i) for i in "hello"]

简单的循环,却很有效,因为总不能写成‘h','e','r','e'吧

1.2更新列表

# list1 = [str(i) for i in "here"]
# list3=[]
list3.extend([list1[x]])#列表取元素

  1.3删除列表元素

  可以使用 del 语句来删除列表的元素

# list1=[1,2,3,4]
del list1[2]

二、python集合(内置的符号操作这里不提及)

  • 集合的特点:
  • 具有唯一性
  • 不支持索引
  • 与字典相同,也是无序的

  2.1集合创建

# s=set(['d','df','ser'])
# print(s)

  2.2集合的添加元素

  #集合减去交集,返回新集合 -----add()用于set()集合类
# s1=set('herea')
# s2=set('hello')
# s3=set()
# for x in s1:
# if x not in s2:#集合减去交集,返回新集合 -----add()用于set()集合类
# s3.add(x)
# print(s3)

  2.3删除集合元素

#remove() #删除元素
但是不是直接删除元素,而是删除集合的下标元素
#s1.remove(1)

三、增加删除元素时的踩雷区

  我们经常会用到循环去遍历集合或者列表,当找到所需条件元素时便会对其增加或删除(从某个列表或者集合中),这里便是雷区,错误及其不易察觉

  引用2.2的例子,将其修改成如下操作:

# list1 = [str(i) for i in "here"]
# list2 = [str(i) for i in "hello"]
# for x in range(len(list1)):
# if list1[x] in list2:#列表删除元素,用不同时往空列表中加 修改为存在,然后删除,看似莫得问题,但这里的循环语句len(list1),在你删除后会动态的变化,便会出现列表下表越界的情况
 # list1.remove(list1[x]) # print(list1)
修改为存在,然后删除,看似莫得问题,但这里的循环语句len(list1),在你删除后会动态的变化,便会出现列表下表越界的情况

**************************************希望能帮助到大家,解除相关疑惑*********************************************

python列表与集合,以及循环时的注意事项的更多相关文章

  1. Python列表、集合与字典(3)

    目录 一.列表 二.集合 三.字典 一.列表 1. 列表初识   列表的使用为处理特定顺序排列的数据提供了便利,列表元素可以是字母.数字或者其他信息,同时所加元素之间不存在任何关系.   在Pytho ...

  2. Python列表操作集合

    对于python列表里元素的操作主要分为以下几个方面: 1.向列表里面加元素: 向python列表里面添加元素主要有三种方法: (1)append() append()对于列表的操作主要实现的是在特定 ...

  3. python :列表 字典 集合 类 ----局部变量可以改全局变量

    #列表 字典 集合 类 ----局部变量可以改全局变量,除了整数和字符串 names=["alex","jack","luck"] def ...

  4. python列表字符串集合常用方法

    1.1 列表常用方法 # 1. append 用于在列表末尾追加新的对象a = [1,2,3]a.append(4) # the result : [1,2,3,4]​# 2. count方法统计某个 ...

  5. forEach循环对集合进行循环时,需判断是否为null;

    分析forEach的源码会发现:foreach源码例子: public class Foreach { public static void main(String[] args) { List< ...

  6. python 列表,集合,字典,字符串的使用

    PY PY基础 append 在末尾添加元素 pop 删除末尾元素 insert(i,item)在i位插入元素 pop(i)删除i位元素 只有1个元素的tuple定义时必须加一个逗号,,来消除歧义 i ...

  7. python列表、集合、元祖、字典推导式

    a = [1, 2, 3, 4, 5, 6, 7, 8]l=[i**2 for i in a if i**2>=16] #列表推导式+if判断print(l)print(type(l)) b={ ...

  8. Python: 列表推导式--轻量级循环

    定义: 列表推导式(list comprehension)是利用其他列表创建新列表的一种方法,其工作方式类似于for循环,对列表进行过滤变种操作 eg1: >>> [x*x for ...

  9. python列表--查找集合中重复元素的个数

    方法一: >>> mylist = [1,2,2,2,2,3,3,3,4,4,4,4] >>> myset = set(mylist) >>> f ...

随机推荐

  1. Spring Boot核心(基本配置)

    上一篇Spring Boot我们简单讲了如何快速创建一个SpringBoot项目. 大家都知道SpringBoot非常强大,可以轻松与各种工具集成,但是我们知其然,也必须知其所以然. 今天开始就和大家 ...

  2. Vue学习之如何进行调试

    调试方法 vue调式方法,浏览器检查元素进入到console 1.console.log() 2.alert('sd') 3.debugger //程序会运行到这里停止 ![](https://img ...

  3. BeanFactory not initialized or already closed

    产生这个错误有两个可能, 一.你没有配置初始化文件,在web.xml中配置如下 <context-param> <param-name>contextConfigLocatio ...

  4. 从零开始用golang创建一条简单的区块链

    区块链(Blockchain),是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息 ...

  5. Spring boot 梳理 - SpringApplication

    简单启动方式 public static void main(String[] args) { SpringApplication.run(MySpringConfiguration.class, a ...

  6. 使用Java元注解和反射实现简单MVC框架

    Springmvc的核心是DispatcherServlet来进行各种请求的拦截,进而进行后续的各种转发处理.流程图如下: 说明:客户端发出一个http请求给web服务器,web服务器对http请求进 ...

  7. linux 配置多个tomcat

    一.安装tomcat 1.下载链接:https://tomcat.apache.org/download-70.cgi,选择需要的版本下载(.tar.gz文件后缀) 2.通过Xshell.Xftp上传 ...

  8. 地图的标注Marker

    (1)在point处添加标注:var marker = new BMap.Marker(point); (2)添加覆盖物:map.addOverlay(marker); (3)激活标注的拖拽功能:ma ...

  9. [scrapy-redis] install and configure scrapy-redis on CentOS 7 (1)

    0. 安装依赖 yum install -y zlib zlib-devel openssl openssl-devel bzip2 bzip2-devel sqlite-devel gcc wget ...

  10. Maven配置JRE版本

    Maven配置JRE版本 apache-maven-3.5.0\conf\settings.xml <profiles> <profile> <id>develop ...