python的list和tuple-条件判断-循环-dict&set

一、list和tuple

list缺点:查找和插入的时间随着元素的增加而增加;

list优点:占用空间小,浪费内存很少。

  1. list和tuple是Python内置的有序集合,一个可变,一个不可变。根据需要来选择使用它们。
  2. list有序列表

  1. tuple不可变列表

二、条件判断

  1. 简单的if else if   else的判断

  1. 判断和input的结合

这是因为input()返回的数据类型是strstr不能直接和整数比较,必须先把str转换成整数。Python提供了int()函数来完成这件事情

但是如果我们输入的不是纯数字,而是带字母或者其他的,就会报错

三、循环

  1. 简单的for in 循环

  1. range 和list

  1. 简单的while循环

  1. break语句,结束循环

  1. continue语句,跳过本次循环

四、dict & set

1、dict 字典

   # dict的特点:查找和插入速度极快,不会随着key的增长而速度变慢

   # dict的缺点:需要占用大量的内存,内存浪费多

  1. dict的定义

  1. 如果dict中的key不存在,dict会报错,解决办法:
    1. 报错信息

    1. in判断,用in判断key是否存在

    1. get()判断,如果不存在返回none,否则返回下标

所以,dict是用空间来换取时间的一种方法。dict的key必须是不可变对象。dict是根据key来计算value的存储位置,这种通过key计算位置的算法称为hash哈希算法。在Python中,字符串、整数都是不可变的,可以做key,而list是可变的,不能做key

2、set

  1. set和dict类似,也是一组key的集合,但不存储value。
  2. 创建set
    1. 创建set需要提供一个list集合,list输出是无序的

    1. 如果list里面有重复元素,set会自动过滤

  1. set的add方法,添加元素到set中,可以重复添加,但不会有效果

  1. remove方法,删除元素

  1. set可以看成是数学意义上的无序和无重复元素的集合,因此,两个set可以做数学上的交集、并集等操作

  1. set的key不可以是可变对象。如下,key值是list就会报错

五、不可变对象

# 因为str1是变量,‘abc’才是字符串对象,str1只是存储了指向‘abc’这个字符串对象的指针。

# 当我们调用replace方法的时候,实际上replace是作用在字符串对象上的,replace并没有改变‘abc’,它创建了一个新字符串对象‘Abc’

# 所以,对于不变对象来说,调用对象方法,不会改变对象自身内容。相反,会创建新的对象返回。这样,确保了不可变对象本身用于是不可变的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中的list(列表),tuple(元组),dict(字典)和set(集合)是常见的数据结构。 1. 列表(list)是一个可变的、有序的元素集合。可以通过方括号[]来创建一个列表,列表中的元素可以是任意类型,并且可以重复。列表提供了丰富的操作方法,如添加元素、删除元素、获取元素等。 2. 元组(tuple)是一个不可变的、有序的元素集合。可以通过小括号()来创建一个元组,元组中的元素可以是任意类型。元组一旦创建后,不能修改其元素的值。元组通常用于存储不可变的数据,如坐标位置、颜色等。 3. 字典(dict)是一种键值对(key-value)的数据结构。可以通过花括号{}来创建一个字典,字典中的元素是无序的,并且每个元素由一个键和对应的值组成。字典中的键必须是唯一的,而值可以是任意类型。字典提供了根据键获取值、添加键值对、删除键值对等操作。 4. 集合(set)是一个无序的、不重复的元素集合。可以通过花括号{}或set()函数来创建一个集合,集合中的元素不能重复。集合提供了并集、交集、差集等常用的数学运算操作,同时还支持元素的添加、删除等操作。 在编程中,根据具体的需求选择使用合适的数据结构能够更高效地处理数据,并且提供相应的操作方法方便开发。以上是对Python中常见的列表、元组、字典和集合的简要介绍。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值