向 list.extend() 传递不可迭代对象

2024-05-06

我正在创建一个公共方法来允许调用者将值写入设备,例如将其称为 write_vals() 。

由于这些值将实时输入,因此我希望通过允许用户输入列表或单个值来简化用户的生活,具体取决于他们需要写入的值的数量。例如:

write_to_device([1,2,3])

or

write_to_device(1)

我的函数希望使用一个平面列表,因此我尝试变得聪明并编写如下代码:

input_list = []  
input_list.extend( input_val )

当用户输入列表时,这可以顺利工作,但当用户输入单个整数时,这会严重失败:

类型错误:“int”对象不可迭代

当传入列表时,使用 list.append() 会创建一个嵌套列表,这会给展平带来额外的麻烦。

检查传入对象的类型似乎很笨拙且不符合Python风格,并且希望 list.extend() 接受不可迭代的对象对我来说毫无意义。尝试各种其他编码方法也是如此。

建议(仅限与编码相关的建议)将不胜感激。


您可以检查传递的参数是否是一个列表isinstance() http://docs.python.org/library/functions.html?highlight=isinstance#isinstance功能。

更好的解决方案可能是支持可变数量的参数:

def write_to_device(*args):
   # |args| is now a list of all the arguments given to the function
   input_list.extend(args)

这样,即使无需将多个值显式指定为列表,也可以将多个值赋予该函数:

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

向 list.extend() 传递不可迭代对象 的相关文章

  • 保存为 HDF5 的图像未着色

    我目前正在开发一个将文本文件和 jpg 图像转换为 HDF5 格式的程序 用HDFView 3 0打开 似乎图像仅以灰度保存 hdf h5py File Sample h5 img Image open Image jpg data np
  • 与区域指示符字符类匹配的 python 正则表达式

    我在 Mac 上使用 python 2 7 10 表情符号中的标志由一对表示区域指示符号 https en wikipedia org wiki Regional Indicator Symbol 我想编写一个 python 正则表达式来在
  • Python 中的舍入浮点问题

    我遇到了 np round np around 的问题 它没有正确舍入 我无法包含代码 因为当我手动设置值 而不是使用我的数据 时 返回有效 但这是输出 In 177 a Out 177 0 0099999998 In 178 np rou
  • Python getstatusoutput 替换不返回完整输出

    我发现了这个很棒的替代品getstatusoutput Python 2 中的函数在 Unix 和 Windows 上同样有效 不过我觉得这个方法有问题output被构建 它只返回输出的最后一行 但我不明白为什么 任何帮助都是极好的 def
  • 需要在python中找到print或printf的源代码[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在做一些我不能完全谈论的事情 我
  • 删除flask中的一对一关系

    我目前正在使用 Flask 开发一个应用程序 并且在删除一对一关系中的项目时遇到了一个大问题 我的模型中有以下结构 class User db Model tablename user user id db Column db String
  • Pandas Merge (pd.merge) 如何设置索引和连接

    我有两个 pandas 数据框 dfLeft 和 dfRight 以日期作为索引 dfLeft cusip factorL date 2012 01 03 XXXX 4 5 2012 01 03 YYYY 6 2 2012 01 04 XX
  • 为什么 PyYAML 花费这么多时间来解析 YAML 文件?

    我正在解析一个大约 6500 行的 YAML 文件 格式如下 foo1 bar1 blah name john age 123 metadata whatever1 whatever whatever2 whatever stuff thi
  • 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 以下 另一方面
  • pip 列出活动 virtualenv 中的全局包

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

    我只想从 a 中选择某些行NumPy http en wikipedia org wiki NumPy基于第二列中的值的数组 例如 此测试数组的第二列包含从 1 到 10 的整数 gt gt gt test numpy array nump
  • 仅第一个加载的 Django 站点有效

    我最近向 stackoverflow 提交了一个问题 标题为使用mod wsgi在apache上多次请求后Django无限加载 https stackoverflow com questions 71705909 django infini
  • Pandas 将多行列数据帧转换为单行多列数据帧

    我的数据框如下 code df Car measurements Before After amb temp 30 268212 26 627491 engine temp 41 812730 39 254255 engine eff 15
  • 根据列 value_counts 过滤数据框(pandas)

    我是第一次尝试熊猫 我有一个包含两列的数据框 user id and string 每个 user id 可能有多个字符串 因此会多次出现在数据帧中 我想从中导出另一个数据框 一个只有那些user ids列出至少有 2 个或更多string
  • 如何解决 PDFBox 没有 unicode 映射错误?

    我有一个现有的 PDF 文件 我想使用 python 脚本将其转换为 Excel 文件 目前正在使用PDFBox 但是存在多个类似以下错误 org apache pdfbox pdmodel font PDType0Font toUnico
  • 模拟pytest中的异常终止

    我的多线程应用程序遇到了一个错误 主线程的任何异常终止 例如 未捕获的异常或某些信号 都会导致其他线程之一死锁 并阻止进程干净退出 我解决了这个问题 但我想添加一个测试来防止回归 但是 我不知道如何在 pytest 中模拟异常终止 如果我只
  • 如何应用一个函数 n 次? [关闭]

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

    我对 python 和一般编程都很陌生 所以请友善 我正在尝试分析包含音乐信息的 csv 文件并返回最常听的前 n 个乐队 从下面的代码中 每听一首歌曲都是一个列表中的字典条目 格式如下 album Exile on Main Street
  • cv2.VideoWriter:请求一个元组作为 Size 参数,然后拒绝它

    我正在使用 OpenCV 4 0 和 Python 3 7 创建延时视频 构造 VideoWriter 对象时 文档表示 Size 参数应该是一个元组 当我给它一个元组时 它拒绝它 当我尝试用其他东西替换它时 它不会接受它 因为它说参数不是

随机推荐

  • 如何用PHP制作下载链接? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我可以使用 sql 在数据库中上传文
  • CSS相对div的宽度自动按绝对div扩展

    是否可以让父级 位置 相对 自动通过其绝对子级扩展其宽度 这是我的 jsfiddle 链接 http jsfiddle net YD2Xu http jsfiddle net YD2Xu 理想的是 container 和 full widt
  • 为什么我的 .Net 对象不可序列化?

    我有一个继承自 System Data DataTable 的 MyDataTable 类 我已经在我的类中实现了 ISerialized 并且有一个 公共覆盖子 GetObjectData 但是 当我尝试序列化 MyDataTable 的
  • 动态设置 Web 应用程序项目的 IISUrl

    我有一个 Web 应用程序项目 我希望能够在完全独立的 IIS 站点上进行分支和开发 而不必每次都继续编辑 vbproj IISUrl 设置 我尝试添加一些标准属性的导入 以便我可以在 WAP 文件之外维护它们 但是当我在元素中引用它们时
  • 返回 Web 浏览器中 HtmlElement 的所有属性

    我需要从我的网络浏览器获取所有属性 当前 我正在使用 GetAttribute 但这样 我需要知道属性的名称 想象一下我不知道我的网络浏览器中有什么 我的 C 代码 StringWriter strWriter new StringWrit
  • 从命令行使用 VBScript 从 Excel 外部运行 Excel 宏

    我正在尝试从 Excel 文件外部运行 Excel 宏 我目前正在使用从命令行运行的 vbs 文件 但它一直告诉我找不到宏 这是我尝试使用的脚本 Set objExcel CreateObject Excel Application Set
  • 如何使用 Apache Livy 设置 Spark 配置属性?

    我不知道在向 Apache Livy 提交 Spark 作业时如何以编程方式传递 SparkSession 参数 这是测试 Spark 作业 class Test extends Job Int override def call jc J
  • UICollectionView 垂直居中

    我有一个UICollectionView大小的对象 320 500 我需要一个来创建UICollectionView以这样的方式 内容垂直居中 意味着如果内容的总大小为 100 100 则单元格应在矩形 0 200 320 300 中绘制自
  • 如何将自定义 POI 添加到谷歌地图导航

    我是 Android 系统的快乐用户 并且经常使用 Google 地图导航 betta 到目前为止 您可以在开车时在地图上添加具有不同 POI 商店 银行 加油站等 的图层 我的问题是是否有一个 API 可以添加您自己的图层 带有您自定义的
  • Pandas 无法读取使用 h5py 创建的 hdf5 文件

    当我尝试读取使用 h5py 创建的 HDF5 格式文件时 出现 pandas 错误 我想知道我是否只是做错了什么 import h5py import numpy as np import pandas as pd h5 file h5py
  • 如何在 svn 存储库中本地忽略 .git 和 .gitignore?

    我有一个 SVN 工作副本 由 TortoiseSVN 管理 在该工作副本中 我使用 git 进行本地版本控制和分支 当然 我想隐藏svn的 git目录和 gitignore文件 但是 忽略它们意味着将属性添加到不再是本地的存储库中 我不希
  • Composer 可以处理 PATH 中的二进制依赖关系吗?

    我知道Composer https getcomposer org 可以确定php hhvm ext
  • 重写继承的构造函数字段时的差异?

    考虑这个简单的 Scala 类 class A val d Int Scala 之间是否存在差异 无论是行为还是生成的字节码 class B d Int extends A d and class B override val d Int
  • 在 Eclipse 中的包资源管理器中,我可以按名称查找文件吗?

    您知道如何在 Eclipse 的 首选项 窗口 菜单栏 窗口 gt 首选项 中 您可以浏览层次结构 但也有一个文本搜索字段 当您在该搜索字段中输入内容时 层次结构将被过滤以仅显示与您输入的内容匹配的条目 我希望在 Package Explo
  • “do { ... } while (0)”在内核代码中到底做了什么? [复制]

    这个问题在这里已经有答案了 可能的重复 当我们定义宏时 do while 0 有什么用 https stackoverflow com questions 923822 whats the use of do while0 when we
  • 从接口调用“IsAssignableFrom”不会返回具体类

    我试图返回实现下面代码中定义的接口的类的对象类型 linq 语句仅返回接口本身 因此控制台输出只是 可分配实验 IRule 为什么不返回具体类 using System using System Linq namespace Assigna
  • 服务中的膨胀视图显示视图,但不显示布局内的 ImageView

    我已经成功地在服务中扩展了我的布局 但是它没有显示ImageView在 的里面Inflated Layout我不知道为什么 我设置了一个onClickListener在图像视图上 它工作得很好 当我单击绿色方块时记录并停止服务 唯一的问题是
  • 原生状态栏

    有没有办法创建nativeSWT 中的状态栏与 Windows 应用程序中的状态栏类似 我见过使用标签模拟的状态栏 但我对真正的解决方案更感兴趣 org eclipse jface action StatusLineManager crea
  • 验证在子类上调用此方法时是否调用了重写的超类方法

    我将用这个例子来展示我的问题 我有一个带有方法的类foo 该类有一个重写此方法的子类 子类的方法调用超类的方法 我可以验证一下吗 我不想测试什么foo在超类中确实如此 我只需要验证它是否被调用 我知道重构可以有所帮助 优先考虑组合而不是继承
  • 向 list.extend() 传递不可迭代对象

    我正在创建一个公共方法来允许调用者将值写入设备 例如将其称为 write vals 由于这些值将实时输入 因此我希望通过允许用户输入列表或单个值来简化用户的生活 具体取决于他们需要写入的值的数量 例如 write to device 1 2