当前位置: 首页 > news >正文

python 中的 下划线_ 是啥意思

在 Python 中,_(下划线)通常用作占位符,表示一个变量名,但程序中不会实际使用这个变量的值。
image.png

目录

    • 忽略循环变量:
    • 忽略函数返回值:
    • 在解释器中使用:
    • 举例子
      • 1. 忽略循环变量
      • 2. 忽略不需要的函数返回值
      • 3. 多次使用 `_` 忽略多个值
      • 4. 忽略值的解包
      • 5. 在列表推导式中使用 `_`
      • 6. 在解释器中使用 `_`
      • 7. 忽略字典遍历中的键或值

它常见于以下几种情况:

忽略循环变量:

image.png

在循环中,如果你不需要使用循环变量的值,可以用 _ 作为变量名。这表明你知道有这个变量,但你不会使用它。

例如:

for _ in range(10):print("This will print 10 times")

在这个例子中,循环变量的值(0 到 9)没有被使用,仅用于控制循环执行 10 次。

忽略函数返回值:

image.png

有时候函数会返回多个值,但你只关心其中的一部分,可以使用 _ 来忽略那些你不需要的返回值。

例如:

def get_coordinates():return (10, 20, 30)x, y, _ = get_coordinates()

在这个例子中,函数 get_coordinates() 返回三个值 (10, 20, 30),但我们只关心前两个值 xy,第三个值被 _ 忽略。

在解释器中使用:

image.png
在 Python 交互式解释器中,_ 被用来表示最后一个执行结果的值。

例如:

>>> 5 + 3
8
>>> _
8

总结起来,_ 主要用作占位符,表示一个不重要的变量或者忽略的值。

举例子

当然可以,以下是几个使用 _ 的常见例子:

1. 忽略循环变量

当你需要循环一定次数,但不使用循环变量时,可以用 _ 来表示:

for _ in range(5):print("This will print 5 times")

此时,_ 只是一个占位符,表示你不关心循环变量的值。

2. 忽略不需要的函数返回值

当一个函数返回多个值,而你只需要其中的一部分时,可以用 _ 来忽略不需要的值:

def get_coordinates():return (10, 20, 30)x, y, _ = get_coordinates()
print(x, y)  # 输出: 10 20

在这里,我们只关心前两个返回值 xy,第三个值被 _ 忽略。

3. 多次使用 _ 忽略多个值

image.png

当一个函数返回多个值,而你只需要其中的一部分时,可以用 _ 来忽略多个不需要的值:

def get_data():return (1, 2, 3, 4, 5)a, _, b, _, c = get_data()
print(a, b, c)  # 输出: 1 3 5

在这里,我们只关心返回的第一个、第三个和第五个值,其他值被 _ 忽略。

4. 忽略值的解包

image.png

当你需要从一个可迭代对象中提取部分值时,可以用 _ 忽略不需要的部分:

data = [1, 2, 3, 4, 5]first, *_, last = data
print(first, last)  # 输出: 1 5

在这里,* _ 忽略中间的所有值,只保留第一个和最后一个值。

5. 在列表推导式中使用 _

image.png

当你使用列表推导式(或其他推导式)时,可以用 _ 来表示一个不关心的变量:

squares = [x * x for x in range(10)]
print(squares)  # 输出: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]# 使用 _ 生成一个不关心的变量
[print("This will print 10 times") for _ in range(10)]

在这里,列表推导式中的 _ 表示我们不关心实际的值,只需要重复执行 print 语句 10 次。

6. 在解释器中使用 _

在 Python 交互式解释器中,_ 可以用来表示最后一个执行结果的值:

>>> 5 + 3
8
>>> _
8
>>> _ * 2
16

在这个例子中,_ 保存了前一个表达式的结果 8,然后可以在后续的计算中使用。

7. 忽略字典遍历中的键或值

image.png

当遍历字典时,如果你只需要键或值,可以用 _ 忽略另一个:

my_dict = {'a': 1, 'b': 2, 'c': 3}# 忽略值
for key, _ in my_dict.items():print(key)  # 输出: a b c# 忽略键
for _, value in my_dict.items():print(value)  # 输出: 1 2 3

在这里,使用 _ 忽略字典遍历中的值或键,分别只处理键或值。

http://www.lryc.cn/news/389050.html

相关文章:

  • Solana公链
  • 【LeetCode】反转字符串中的单词
  • [leetcode]文件组合
  • 数据库断言
  • uniapp+nodejs实现小程序支付
  • SolidityFoundry 安全审计测试 memory滥用
  • 面试题--SpringBoot
  • Stable Diffusion中放大图像的3种方法
  • 生产者消费模式
  • PyMuPDF 操作手册 - 06 PDF的转换等
  • VUE3解决跨域问题
  • 2024阿里云大模型自定义插件(如何调用自定义接口)
  • 生成式人工智能将如何改变网络可访问性
  • 科普文:一文搞懂jvm实战(二)Cleaner回收jvm资源
  • 使用PyTorch高效读取二进制数据集进行训练
  • 应急响应:应急响应流程,常见应急事件及处置思路
  • Kotlin/Android中执行HTTP请求
  • 哈希表(C++实现)
  • 深入理解代理模式(Proxy Pattern)及其实际应用
  • Elasticsearch (1):ES基本概念和原理简单介绍
  • 【Python爬虫】Python爬取喜马拉雅,爬虫教程!
  • 基于Jmeter的分布式压测环境搭建及简单压测实践
  • IDEA常用代码模板
  • 基于大语言模型的多意图增强搜索
  • 【ai】ubuntu18.04 找不到 nvcc --version问题
  • 深入了解DDoS攻击及其防护措施
  • 【面试系列】产品经理高频面试题及详细解答
  • 前端特殊字符数据,后端接收产生错乱,前后端都需要处理
  • 力扣热100 哈希
  • [图解]SysML和EA建模住宅安全系统-05-参数图