python 中的 下划线_ 是啥意思

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

目录

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

它常见于以下几种情况:

忽略循环变量:

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

例如:

python 复制代码
for _ in range(10):
    print("This will print 10 times")

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

忽略函数返回值:

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

例如:

python 复制代码
def get_coordinates():
    return (10, 20, 30)

x, y, _ = get_coordinates()

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

在解释器中使用:

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

例如:

python 复制代码
>>> 5 + 3
8
>>> _
8

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

举例子

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

1. 忽略循环变量

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

python 复制代码
for _ in range(5):
    print("This will print 5 times")

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

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

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

python 复制代码
def get_coordinates():
    return (10, 20, 30)

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

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

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

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

python 复制代码
def get_data():
    return (1, 2, 3, 4, 5)

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

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

4. 忽略值的解包

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

python 复制代码
data = [1, 2, 3, 4, 5]

first, *_, last = data
print(first, last)  # 输出: 1 5

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

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

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

python 复制代码
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 交互式解释器中,_ 可以用来表示最后一个执行结果的值:

python 复制代码
>>> 5 + 3
8
>>> _
8
>>> _ * 2
16

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

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

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

python 复制代码
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

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

相关推荐
Y4090015 分钟前
C语言转Java语言,相同与相异之处
java·c语言·开发语言·笔记
van叶~10 分钟前
Linux探秘坊-------15.线程概念与控制
linux·运维·服务器
都叫我大帅哥1 小时前
Python的Optional:让你的代码优雅处理“空值”危机
python
曾几何时`3 小时前
基于python和neo4j构建知识图谱医药问答系统
python·知识图谱·neo4j
2301_780789664 小时前
UDP和TCP的主要区别是什么
服务器·网络协议·web安全·网络安全·udp
古月-一个C++方向的小白5 小时前
C++11之lambda表达式与包装器
开发语言·c++
写写闲篇儿6 小时前
Python+MongoDB高效开发组合
linux·python·mongodb
沐知全栈开发6 小时前
Eclipse 生成 jar 包
开发语言
杭州杭州杭州7 小时前
Python笔记
开发语言·笔记·python
一个龙的传说7 小时前
linux 常用命令
linux·服务器·zookeeper