python列表与集合,以及循环时的注意事项
一、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列表与集合,以及循环时的注意事项的更多相关文章
- Python列表、集合与字典(3)
目录 一.列表 二.集合 三.字典 一.列表 1. 列表初识 列表的使用为处理特定顺序排列的数据提供了便利,列表元素可以是字母.数字或者其他信息,同时所加元素之间不存在任何关系. 在Pytho ...
- Python列表操作集合
对于python列表里元素的操作主要分为以下几个方面: 1.向列表里面加元素: 向python列表里面添加元素主要有三种方法: (1)append() append()对于列表的操作主要实现的是在特定 ...
- python :列表 字典 集合 类 ----局部变量可以改全局变量
#列表 字典 集合 类 ----局部变量可以改全局变量,除了整数和字符串 names=["alex","jack","luck"] def ...
- python列表字符串集合常用方法
1.1 列表常用方法 # 1. append 用于在列表末尾追加新的对象a = [1,2,3]a.append(4) # the result : [1,2,3,4]# 2. count方法统计某个 ...
- forEach循环对集合进行循环时,需判断是否为null;
分析forEach的源码会发现:foreach源码例子: public class Foreach { public static void main(String[] args) { List< ...
- python 列表,集合,字典,字符串的使用
PY PY基础 append 在末尾添加元素 pop 删除末尾元素 insert(i,item)在i位插入元素 pop(i)删除i位元素 只有1个元素的tuple定义时必须加一个逗号,,来消除歧义 i ...
- 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={ ...
- Python: 列表推导式--轻量级循环
定义: 列表推导式(list comprehension)是利用其他列表创建新列表的一种方法,其工作方式类似于for循环,对列表进行过滤变种操作 eg1: >>> [x*x for ...
- python列表--查找集合中重复元素的个数
方法一: >>> mylist = [1,2,2,2,2,3,3,3,4,4,4,4] >>> myset = set(mylist) >>> f ...
随机推荐
- RDD基本操作之Action
Action介绍 在RDD上计算出来一个结果 把结果返回给driver program或保存在文件系统,count(),save 常用的Action reduce() 接收一个函数,作用在RDD两个类 ...
- Ext.js中树勾选的四种操作
最近在做控件优化的时候产品提了一个需求,对树的勾选要满足四种勾选方案: 1.点击一次根节点,当根节点和子节点均未选中的情况下,根节点和子节点全都选中. 2.第二次点击根节点,当根节点和部分或全部子节点 ...
- 使用git在github远程仓库中操作
在github上创建一个仓库,这一步参考廖雪峰老师的git教程,以及其他的一些准备工作略,我只记录几个重要的命令. 从其他github地址克隆项目 $ git clone git@github.com ...
- linux下安装node.js时npm无法使用
安装node.js 10.15.1版本时,安装完在node的安装目录下执行./node -v查看node版本,成功则表示node已安装成功 [root@localhost bin]# ./node - ...
- logcat粗略了解(一)
Logcat Logcat介绍:logcat是android的一个命令行工具,用于的到程序的log信息 Logcat命令格式: [adb] logcat [<option>]…[<f ...
- 关于json字符串与实体之间的严格验证
在一个项目中要求严格验证传入的json字符串与定义的 类匹配,否则不记录.感觉这个严格验证找了好多资料才找到,可能用的人比较少,特摘出来给大家分析,直接上代码了: using Newtonsoft ...
- Spring Boot 梳理 - 4个核心
Spring Boot 魔法的核心:自动配置.起步依赖.命令行界面.Actuator 自动配置: 不用手动配置JdbcTemplate的Bean 不用手动配置DataSource的Bean Sprin ...
- mybatis 常用的jabcType与javaType对应
一.jabcType与javaType对应 JDBC Type Java Type CHAR String VARCHAR ...
- 阿里云服务器ecs配置之安装redis服务
一.介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括st ...
- java8 运算语法集
1.分组并进行求和组合运算 示例主要代码: List<String> items = Arrays.asList("apple", "apple", ...