一、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. springboot之全局处理异常封装

    springboot之全局处理异常封装 简介 在项目中经常出现系统异常的情况,比如NullPointerException等等.如果默认未处理的情况下,springboot会响应默认的错误提示,这样对 ...

  2. C++基础之IO类

    下面是IO类的继承关系: ifstream和istringstream都继承自istream.因此,我们可以在传递istream对象的地方传递ifstream和istringstream. 例如:对i ...

  3. 【linux】【FastDFS】FastDFS上传返回的url直接下载和下载文件的文件名问题

    FastDFS安装及其他问题参考:https://www.cnblogs.com/jxd283465/p/11556263.html直接调用FastDFS返回的url,浏览器访问后默认打开方式./us ...

  4. kubernetes实战(二十六):kubeadm 安装 高可用 k8s v1.16.x dashboard 2.x

    1.基本配置 基本配置.内核升级.基本服务安装参考https://www.cnblogs.com/dukuan/p/10278637.html,或者参考<再也不踩坑的Kubernetes实战指南 ...

  5. java自学小测试 九九乘法表

    public class Ninenine { public static void main(String[] args) { for(int i=1;i<=9;i++){ for(int j ...

  6. MySql错误处理--错误代码和消息

      附录B:错误代码和消息 目录 B.1. 服务器错误代码和消息 B.2. 客户端错误代码和消息 本章列出了当你用任何主机语言调用MySQL时可能出现的错误.首先列出了服务器错误消息.其次列出了客户端 ...

  7. 为博客添加 Gitalk 评论插件

    背景 Disqus需要翻墙才能正常使用 畅言有广告 2种评论系统都很难统一管理 优化 使用Gitalk评论插件 , gitalk 使用 Github 帐号登录,界面干净整洁,支持 MarkDown语法 ...

  8. 为何stop()和suspend()方法不推荐使用(转)

    stop()方法作为一种粗暴的线程终止行为,在线程终止之前没有对其做任何的清除操作,因此具有固有的不安全性. 用Thread.stop()方法来终止线程将会释放该线程对象已经锁定的所有监视器.如果以前 ...

  9. java使用POI操作excel文件,实现批量导出,和导入

    一.POI的定义 JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI .jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel.而poi可以操作Exc ...

  10. 创建FTP访问的YUM源

    创建FTP访问的YUM源 一.安装vsftpd(步骤详见“在linux中搭建vsftpd.docx”) 在主机A上安装FTP,安装后的ftp信息如下:ftp://192.168.43.300  账号密 ...