Python中的`in`与`not in`关键词、f-string格式化输出详解以及列表操作技巧(包括索引、计数、切片和增删操作)

in和not in

是 Python 中的成员运算符,用来判断对象在可迭代对象里是否存在

in 运算符

如果存在则返回 True,否则返回 False

检查某个值(value)是否存在于字典中,使用values()方法,或遍历字典

同时检查键和值是否存在于字典中,使用items()方法

not in运算符

not in 是 in 的反义操作,如果不存在则返回 True,否则返回 False

工作原理

当使用 in 或 not in 运算符时,Python 会首先尝试调用对象的 __contains__() 方法,

如果类没有实现 __contains__() 方法,Python 会退而使用迭代协议:

  1. 首先尝试调用 __iter__() 方法进行迭代

  2. 如果没有 __iter__(),则尝试调用 __getitem__() 方法(从索引0开始顺序访问)

__contains__() 方法

 contains,中文:包含

hasattr() ,内置函数,用于检查对象是否具有指定的属性或方法

格式化输出字符

% 占位符

x是小写时输出小写,x是大写时输出大写

%.nf 保留小数点后n位(四舍五入)

示例

在右侧加空格

输出 %,转义字符 %

 format() 方法

语法 

示例 

索引和变量名的混用

注意:变量名放最后,否则报错

列表的格式化输出

或 解包列表

*d 是 Python 的 解包操作符(Unpacking Operator),它的作用是将列表 d 中的元素 逐个拆分,并作为单独的参数传递给 format() 方法。

f-strings

格式化字符串字面量,Formatted String Literals,是一种在字符串中直接嵌入表达式的高效格式化方法,自 Python 3.6 引入

语法示例

可以调用方法或表达式

列表 List

用于存储 有序、可变 的元素集合,元素之间用逗号分隔。列表可以包含任意类型的对象(如数字、字符串、甚至其他列表),并支持动态增删改查(操作列表)。

创建列表

使用 [  ] 

使用list ()函数

  • 将其他可迭代对象(如元组、字符串、集合等)转换为列表

  • 创建一个空列表

  • 访问元素

    列表是有序的,可以使用下标\索引获取元素;索引从 0 开始,负数索引表示从末尾访问(-1 是最后一个元素)

    查询

    索引查询 index()

    用于查找某个元素在序列中第一次出现的位置

    示例

    in运算符

    用于检查某个元素是否存在于序列(如字符串、列表、元组、字典、集合等)中。它返回一个布尔值(True 或 False)。

    示例

    元素计数 count()

    用于统计某个元素在序列中出现的次数。

    切片

    修改

    增加元素

    append() 方法 【单】

    追加,在列表末尾添加单个元素

    时间复杂度为 O(1),这意味着添加元素的时间不会随着列表长度的增加而增加,因为不需要移动列表中的其他元素。

    extend() 方法 【多】

    扩展,在列表末尾添加多个元素(可迭代对象)

    加法运算 + 【多】

    列表的加法运算 + ,生成了新列表

    解包  【多】

    使用 * 运算符 【重复】

    insert() 方法 【单】

    在指定位置插入元素

    切片赋值 【多】

    在指定位置插入多个元素

    + 和 +=的区别

    +产生新列表,+= 修改原列表

    删除元素

    pop()方法

    列表(List)和字典(Dict)等数据结构常用的方法,用于移除返回指定位置的元素。

    列表 List 的pop语法

    示例

    字典 Dict 的pop语法

    集合 set 的pop语法

    会移除并返回任意一个元素(因为集合是无序的)

    双端队列deque 的pop语法和popleft

    collections.deque 支持从两端弹出元素

    pop()方法从双端队列的右端弹出

    popleft()方法从双端队列的左端弹出

    remove()方法

    用于移除列表中第一个匹配项的方法,支持remove()方法的数据结构有:列表List,集合Set,双端队列deque,数组Array,其中集合Set因为集合元素唯一,不存在重复,所以是直接移除元素

    列表(List)的 remove() 方法

    clear()方法

    用于清空可变数据结构内容的方法,它会移除容器中的所有元素,使其变为空容器。

    适用的数据结构:列表List,字典Dict, 集合Set, 双端队列deque

    示例

    del 关键字

    用于删除对象引用或容器中的元素

    注意:del 删除的是引用而不是对象本身,对象由垃圾回收机制处理

    作者:想做富婆

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python中的`in`与`not in`关键词、f-string格式化输出详解以及列表操作技巧(包括索引、计数、切片和增删操作)

    发表回复