Python三元运算符不能返回多个值?

2024-04-02

我知道有些人不赞成这种做法,但我喜欢使用 Python 的三元运算符,因为它使操作变得简单if/else陈述读起来更清晰(我认为)。无论如何,我发现我不能这样做:

>>> a,b = 1,2 if True else 0,0
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: too many values to unpack

我认为三元运算符的工作方式是它本质上构建了以下内容:

if True:
  a,b = 1,2
else:
  a,b = 0,0

有人可以解释为什么我的第一个代码示例不起作用吗?并且,如果有的话,提供一个单行代码来有条件地分配多个变量?


它将其解析为三个值,它们是:

1,
2 if True else 0,
0

因此它变成了三个值(1,2,0),它大于表达式左侧的两个值。

Try:

a,b = (1,2) if True else (0,0)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python三元运算符不能返回多个值? 的相关文章

  • 如果两点之间的距离低于某个阈值,则从列表中删除点

    我有一个点列表 只有当它们之间的距离大于某个阈值时 我才想保留列表中的点 因此 从第一个点开始 如果第一个点和第二个点之间的距离小于阈值 那么我将删除第二个点 然后计算第一个点和第三个点之间的距离 如果该距离小于阈值 则比较第一点和第四点
  • 为什么从 Pandas 1.0 中删除了日期时间?

    我在 pandas 中处理大量数据分析并每天使用 pandas datetime 最近我收到警告 FutureWarning pandas datetime 类已弃用 并将在未来版本中从 pandas 中删除 改为从 datetime 模块
  • 如何使用 opencv.omnidir 模块对鱼眼图像进行去扭曲

    我正在尝试使用全向模块 http docs opencv org trunk db dd2 namespacecv 1 1omnidir html用于对鱼眼图像进行扭曲处理Python 我正在尝试适应这一点C 教程 http docs op
  • 将html数据解析成python列表进行操作

    我正在尝试读取 html 网站并提取其数据 例如 我想查看公司过去 5 年的 EPS 每股收益 基本上 我可以读入它 并且可以使用 BeautifulSoup 或 html2text 创建一个巨大的文本块 然后我想搜索该文件 我一直在使用
  • Pandas/Google BigQuery:架构不匹配导致上传失败

    我的谷歌表中的架构如下所示 price datetime DATETIME symbol STRING bid open FLOAT bid high FLOAT bid low FLOAT bid close FLOAT ask open
  • Python getstatusoutput 替换不返回完整输出

    我发现了这个很棒的替代品getstatusoutput Python 2 中的函数在 Unix 和 Windows 上同样有效 不过我觉得这个方法有问题output被构建 它只返回输出的最后一行 但我不明白为什么 任何帮助都是极好的 def
  • 使用字典映射数据帧索引

    为什么不df index map dict 工作就像df column name map dict 这是尝试使用index map的一个小例子 import pandas as pd df pd DataFrame one A 10 B 2
  • 如何使用 Pandas、Numpy 加速 Python 中的嵌套 for 循环逻辑?

    我想检查一下表的字段是否TestProject包含了Client端传入的参数 嵌套for循环很丑陋 有什么高效简单的方法来实现吗 非常感谢您的任何建议 def test parameter a list parameter b list g
  • YOLOv8获取预测边界框

    我想将 OpenCV 与 YOLOv8 集成ultralytics 所以我想从模型预测中获取边界框坐标 我该怎么做呢 from ultralytics import YOLO import cv2 model YOLO yolov8n pt
  • 在Python中连接反斜杠

    我是 python 新手 所以如果这听起来很简单 请原谅我 我想加入一些变量来生成一条路径 像这样 AAAABBBBCCCC 2 2014 04 2014 04 01 csv Id TypeOfMachine year month year
  • 从Python中的字典列表中查找特定值

    我的字典列表中有以下数据 data I versicolor 0 Sepal Length 7 9 I setosa 0 I virginica 1 I versicolor 0 I setosa 1 I virginica 0 Sepal
  • Python,将函数的输出重定向到文件中

    我正在尝试将函数的输出存储到Python中的文件中 我想做的是这样的 def test print This is a Test file open Log a file write test file close 但是当我这样做时 我收到
  • 在Python中检索PostgreSQL数据库的新记录

    在数据库表中 第二列和第三列有数字 将会不断添加新行 每次 每当数据库表中添加新行时 python 都需要不断检查它们 当 sql 表中收到的新行数低于 105 时 python 应打印一条通知消息 警告 数量已降至 105 以下 另一方面
  • 如何使用python在一个文件中写入多行

    如果我知道要写多少行 我就知道如何将多行写入一个文件 但是 当我想写多行时 问题就出现了 但是 我不知道它们会是多少 我正在开发一个应用程序 它从网站上抓取并将结果的链接存储在文本文件中 但是 我们不知道它会回复多少行 我的代码现在如下 r
  • Jupyter Notebook 找不到 Python 模块

    不知道发生了什么 但每当我使用 ipython 氢 原子 或 jupyter 笔记本时都找不到任何已安装的模块 我知道我安装了 pandas 但笔记本说找不到 我应该补充一点 当我正常运行脚本时 python script py 它确实导入
  • pip 列出活动 virtualenv 中的全局包

    将 pip 从 1 4 x 升级到 1 5 后pip freeze输出我的全局安装 系统 软件包的列表 而不是我的 virtualenv 中安装的软件包的列表 我尝试再次降级到 1 4 但这并不能解决我的问题 这有点类似于这个问题 http
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 如何使用原始 SQL 查询实现搜索功能

    我正在创建一个由 CS50 的网络系列指导的应用程序 这要求我仅使用原始 SQL 查询而不是 ORM 我正在尝试创建一个搜索功能 用户可以在其中查找存储在数据库中的书籍列表 我希望他们能够查询 书籍 表中的 ISBN 标题 作者列 目前 它
  • 如何应用一个函数 n 次? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 假设我有一个函数 它接受一个参数并返回相同类型的结果 def increment x return x 1 如何制作高阶函数repeat可以
  • Pandas 每周计算重复值

    我有一个Dataframe包含按周分组的日期和 ID df date id 2022 02 07 1 3 5 4 2022 02 14 2 1 3 2022 02 21 9 10 1 2022 05 16 我想计算每周有多少 id 与上周重

随机推荐

  • FParsec 的缩进、表达式、语句和 StackOverflowException - 错误

    我用 FParsec 测试缩进 根据这个实现 https github com stephan tolksdorf fparsec wiki Parsing indentation based syntax with FParsec 但是当
  • 比较两个字符串或对象并获取差异

    我想在我的网站上实现一种版本历史记录 并且我需要一种比较字符串或对象键的方法 例如 原始字符串 对象键 更快的棕色狐狸 修改后的字符串 对象键 The Quick Brown Fox 跳过了那只懒兔子 修订 添加跳过了那只懒兔子已删除er
  • Rails form_tag 表单编写 - 带非活动记录模型

    我是 Rails 的新手 我正在编写一个 couchrest rails 应用程序 因此我没有为此模型使用 activerecord 我刚刚发现这意味着 form for model 行不通的 我正在尝试弄清楚如何使用 form tag 但
  • Win32:如何使用CreateWindowExW()函数创建ListBox控件?

    我浏览过多个站点 文档和教程 他们都说相同 即任何控件都只不过是 Win32 API 中的一个窗口 因此可以使用CreateWindowExW 函数来创建一个ListBox主应用程序窗口上的控件 窗口 虽然我明白所有控件都是具有不同窗口的概
  • 将向量转换为逻辑矩阵

    是否有一个原生 R 函数可以接受输入向量并返回相应的二进制矩阵 其中该矩阵的列数与输入向量中的唯一值相同 例如 给定x lt 1 3 我想返回以下矩阵 1 2 3 1 1 0 0 2 0 1 0 3 0 0 1 功能contrasts接近了
  • Python解包线程安全吗?

    是一个类似的操作x y self mytuplePython 中的原子 或者可以self mytuple在分配期间被另一个线程修改 导致 x 引用 self mytuple 的第一个版本 而 y 引用第二个版本 我正在使用Python 3
  • Xamarin 部署不适用于 Android

    我已经设置了一个newXamarin Forms 项目 我想构建它并将其部署到模拟器或 Android 设备 但它不起作用 在Visual Studio的Output窗口中 显示以下错误 应用程序无法启动 确保应用程序具有 已安装到目标设备
  • Maven 资源插件复制文件

    我目前有一些 Maven 项目 当我安装项目时 我需要将所有文件从 conf 文件夹复制到目标文件夹 Project src conf lt FROM HERE gt lib target lt TO HERE gt 我在 pom xml
  • console.log() 已定义但未登录 IE - 空控制台

    Internet Explorer 8 和 9 中页面上的 Javascript打开开发者工具达到console log 其定义为 but 实际日志中没有出现任何内容 尝试过的事情 仔细检查alert s that console被定义并且
  • 如何使从天蓝色广告收到的 Jwt 令牌无效

    我有 2 个应用程序 一个是 Spring Boot 另一个是 Angular 目前 我已将我的应用程序与 azure ad 集成 从而通过它进行身份验证 现在的问题是 当用户从前端应用程序注销时 如果令牌未过期 如何使Azure AD提供
  • 卡夫卡保留政策

    假设我有一个多代理 在同一主机上运行 Kafka 设置 其中包含 3 个代理和 50 个主题 每个主题配置为具有 7 个分区和 3 的复制因子 我有 50GB 内存可用于 kafka 并确保 Kafka 日志永远不会超过此内存量 因此我想配
  • 在子控制器中查看控制器框架大小

    我正在实施 UIViewcontroller 遏制 在下面的示例中 我在根控制器中设置了子控制器的帧大小 子视图显示为我设置的大小 但是当我检查它在 container1 内的边界时 它报告的大小与我设置的大小不同 根控制器 容器 void
  • MySQL 排序规则:utf8mb4_unicode_ci 与“utf8mb4 - 默认排序规则”

    请帮助我理解 MySQL Workbench 中列出的排序规则之间的差异 utf8mb4 unicode ci vs utf8mb4 default collation 附注大家都推荐使用utf8mb4 unicode ci 如果这如此受欢
  • 如何使用Python读取文件夹中的文件数量?

    如何使用Python读取特定文件夹中的文件数量 示例代码会很棒 要非递归地计算文件和目录 您可以使用os listdir http docs python org library os html os listdir并取其长度 要递归计算文
  • jstree选择节点

    问候 我正在使用 jsTree 生成分层数据 JsTree生成如下 function industries tree data type json opts url Admin GetIndustries 它可以找到并且 jsonresul
  • 在phonegap应用程序中导出sqlite数据库

    我们有一个使用 cordova phonegap 和他自己的 sqlite DB 的应用程序 我的意思是我们没有安装外部 sqlite 我们需要将数据库备份到 SD 内存中 但将 sqlite 文件从 PhoneGap 导出到 SD 时遇到
  • 在 Code::Blocks 中构建 wxWidgets 程序

    我正在尝试建立这个wxWidgets示例程序 http www wxwidgets org docs tutorials hworld2 txt使用 Code Blocks 12 11 但无论我尝试什么 构建都会失败 例如 构建日志显示以下
  • Flutter:等待 async void 方法

    我有一个写入文件系统的异步保存方法 返回类型为void 我想在保存完成后立即更新用户界面 通常我会使用 then 方法来做到这一点 但它不适用于 void 返回类型 那么 当保存完成后 我如何才能收到通知呢 void save Folder
  • 如何将 MouseListener 添加到 JList 项目?

    所以 我想要的是当JList选择项目后 将运行另一段代码 但我的问题是 我该如何实施MouseListeners对于具体的JList items 这是我的代码 public void launchFrame String selection
  • Python三元运算符不能返回多个值?

    我知道有些人不赞成这种做法 但我喜欢使用 Python 的三元运算符 因为它使操作变得简单if else陈述读起来更清晰 我认为 无论如何 我发现我不能这样做 gt gt gt a b 1 2 if True else 0 0 Traceb