Python struct.pack() 用于列表中的各个元素?

2024-02-09

我想将列表中的所有数据打包到单个缓冲区中以通过 UDP 套接字发送。该列表相对较长,因此为列表中的每个元素建立索引非常繁琐。这是我到目前为止所拥有的:

NumElements = len(data)
buf = struct.pack('d'*NumElements,data[0],data[1],data[2],data[3],data[4])

但我想做一些更Pythonic的事情,如果我向列表中添加更多元素,则不需要更改调用...类似:

NumElements = len(data)
buf = struct.pack('d'*NumElements,data)  # Returns error

有没有好的方法可以做到这一点?


是的,您可以使用*args调用语法。

而不是这个:

buf = struct.pack('d'*NumElements,data)  # Returns error

… 做这个:

buf = struct.pack('d'*NumElements, *data) # Works

See 解压参数列表 http://docs.python.org/3/tutorial/controlflow.html#unpacking-argument-lists在教程中。 (但实际上,请阅读第 4.7 节的全部内容,而不仅仅是 4.7.4,否则您将不知道“相反的情况……”指的是什么……)简单地说:

...当参数已经在列表或元组中但需要为需要单独位置参数的函数调用解包时...使用 * 运算符编写函数调用以将参数从列表或元组中解包...

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

Python struct.pack() 用于列表中的各个元素? 的相关文章

  • 如何在Python中找到低精度浮点值的原始文本表示?

    我遇到了显示问题floatPython 中的值 从外部数据源加载 它们是 32 位浮点数 但这也适用于较低精度的浮点数 以防万一 这些值是由人类在 C C 中输入的 因此与任意计算值不同 与round数字很 可能not预期的 但不能被忽略
  • 为什么最新的 Python 3.8.x 版本不提供 Windows 安装程序?

    我需要在Windows计算机上安装Python 3 8并希望使用最新的小版本3 8 12 https www python org downloads release python 3812 官方发布网页提供了源代码的 tarball 文件
  • 如何从数据库模式自动生成示例 Django 应用程序?

    我正在评估概念验证应用程序的框架 该应用程序的生命周期约为 30 天 之后它将被遗忘或完全重写 我已确定要从现有数据库模式自动生成示例应用程序 然后调整视觉设计的某些方面 我看过一个演示红宝石 on Rails 它会为数据库中的每个表自动生
  • 如何在模型 Django 中创建必需:布尔字段

    我有一个模型 其中有一个名为的字段is student and is teacher Student and Teacher forms is teacher models BooleanField teacher status defau
  • Python绕相机轴旋转图像

    假设我有一个图像 是在对某些原始图像应用单应性变换 H 后获得的 未显示原始图像 将单应性 H 应用于原始图像的结果是该图像 我想围绕合适的轴 可能是相机所在的位置 如果有的话 将此图像旋转 30 度以获得此图像 如果我不知道相机参数 如何
  • 如何逐行替换(更新)文件中的文本

    我试图通过读取每一行 测试它 然后写入是否需要更新来替换文本文件中的文本 我不想保存为新文件 因为我的脚本已经先备份文件并对备份进行操作 这是我到目前为止所拥有的 我从 os walk 获取路径 并且保证 pathmatch var 正确返
  • 将元组列表转换为字符串 Python

    例如 我用 python 编写了一个返回列表的函数 1 1 2 2 3 3 但我希望输出为字符串 这样我就可以用另一个字符替换逗号 这样输出就是 1 1 2 2 3 3 有什么简单的方法可以解决这个问题吗 感谢您提前提供任何提示 这看起来像
  • Python中非常大的整数的math.pow是错误的[重复]

    这个问题在这里已经有答案了 我试图通过计算一个整数的非常大的幂来打印一个非常大的数字 尽管我的代码是正确的 但我没有观察到所需的输出 一般来说 Python解释器可以打印系统内存支持的非常大的整数 考虑到这个假设 下面是我正在运行的代码 a
  • Python 将 0 计算为 False

    在 Python 控制台中 gt gt gt a 0 gt gt gt if a print L gt gt gt a 1 gt gt gt if a print L L gt gt gt a 2 gt gt gt if a print L
  • 如何在Python中重命名virtualenv?

    我拼错了名字virtualenv使用以下方法初始化它 virtualenv vnev 我实际上打算创建一个名为的环境venv 尝试重命名后vnev文件夹到venv 我发现这并没有提供太多帮助 激活环境的名称仍然重命名旧的vnev mv vn
  • 使用 mechanize 和 beautiful soup 在 python 中进行原始 HTML 与 DOM 抓取

    我正在尝试编写一个程序 作为示例 该程序将从该网页上刮掉最高价格 http www kayak com flights JFK PAR 2012 06 01 2012 07 01 1adults http www kayak com fli
  • Django 单元测试数据库没有被拆除?

    我编写了一些单元测试来测试我的 Django 应用程序 特别是一个测试套件中包含大量代码setUp 功能 所述代码的目的是为数据库创建测试数据 是的 我了解固定装置 并且选择在这种情况下不使用它们 当我运行单元测试套件时 运行的第一个测试通
  • 如何在Python中比较列表列表中的元素以及比较列表列表中的键?

    我有以下顺序 seq ATG ATG ATG ATG GAC GAT GAA CCT GCC GCG GCA GCT 这是一个字典键 用于存储每个密码子的氨基酸值 三联碱基 例如ATG GCT etc aminoacid TTT F TTC
  • 为什么Python 3中实例方法可以作为类方法调用?

    考虑下面的类 class Foo object def bar self print self 在Python 2中 2 7 13 调用bar 作为类方法引发异常 gt gt gt Foo bar hello Traceback most
  • 并行磁盘 I/O

    我有几个想要阅读的日志文件 不失一般性 假设日志文件处理如下 def process infilepath answer 0 with open infilepath as infile for line in infile if line
  • Python 日志记录 - 如何检查记录器是否为空

    我刚刚在我的应用程序中实现了日志记录 我想知道是否有一种方法可以检查记录器是否为空 我的想法是在我的脚本中设置两个处理程序 一个用于带水平仪的控制台WARNING 一个用于带级别的文件DEBUG 在脚本的最后 我需要检查是否CONSOLE记
  • Python,质数检查器[重复]

    这个问题在这里已经有答案了 你好 我正在创建一个函数来检查一个数字是否是素数 但它告诉我 9 是一个素数 def eprimo num if num lt 2 return False if num 2 return True else f
  • 写入文件的正确方法?

    我想知道这样做是否有什么区别 var1 open filename w write Hello world 并做 var1 open filename w var1 write Hello world var1 close 我发现没有必要
  • 尝试接收 UDP 多播时出现空指针异常

    在尝试了几次让简单的 UDP 多播接收器工作后 我感到很困惑 在我自己的代码无法按预期工作后 我尝试了 vertx 文档中发布的确切示例 DatagramSocket socket vertx createDatagramSocket ne
  • 我收到错误:rest_framework.request.WrappedAttributeError:'CSRFCheck'对象没有属性'process_request'

    urls py from django conf urls import url from django contrib import admin from django conf import settings from django c

随机推荐

  • 查找 bash 中第一列中每个不同值的第 n 列中的最大值

    我有一个 3 列文件 我想找到第三列的最大值 其中行与第一列相同 并且输出中还有第二列 Input 1 234 0 005 1 235 0 060 1 236 0 001 2 234 0 010 2 235 0 003 2 236 0 00
  • 在同一场景中加载新的 fxml

    我有 2 个 fxml 文件 布局 标题 菜单栏和内容 Anchorpane 它应该放置在其他 fxml 文件的内容中 我想知道如何从 Master 场景加载内容空间内的第二个文件 在 javaFX 中工作是一件好事还是加载新场景更好 我正
  • 如何显示视频路径中的视频缩略图?

    我想在 ImageView 中显示存储上视频路径的视频缩略图 是否有一个函数可以获取视频路径并返回缩略图的位图 我通过以下代码获取视频路径 public ArrayList
  • F# 可变列表为空

    当我尝试运行下面的代码时 属性为空 这是为什么 我为属性分配了一个空列表 但第一次通过循环时 它为空 这会导致它删除我附加到它的第一个值 我也不明白这一点 似乎与 null 连接的值应该是该值的列表
  • Grep正则表达式查找可变长度字符串中的数字

    我需要某种方法来查找包含字符和数字的任意组合的单词 但是仅恰好 4 位数字 以及至少一个字符 EXAMPLE a1a1a1a1 Match 1234 NO match no characters a1a1a1a1a1 NO match ab
  • 将自定义包添加到 Azure 机器学习工作室

    我需要使用 azure 机器学习工作室上的函数 tsCV 来评估预测模型 但出现错误 could not find function tsCV 我正在尝试更新预测包 但未加载任何包 我按照这个教程http blog revolutionan
  • 简单的伪随机算法

    我需要一个伪随机生成器 它将一个数字作为输入并返回另一个数字 该数字是可再现的并且似乎是随机的 每个输入数字应与一个输出数字完全匹配 反之亦然 相同的输入数字总是导致相同的输出数字 靠近的连续输入数字 例如 1 和 2 应该产生完全不同的输
  • 为 i18n 设计属性?

    如何翻译 Devise 模型的属性 例如 session email or session remember me 两个层次结构 de devise sessions email E Mail and de activerecord att
  • Java中的“自动递增”字母表?

    Java 中的 自动增量 字母表 这可能吗 从头到尾没有第三方库 是的 你可以这样做 for char alphabet A alphabet lt Z alphabet System out println alphabet 也可以通过类
  • 在同一查询中混合 HQL 和 SQL

    我正在尝试在同一个查询中混合 HQL 和 SQl 喜欢使用 来自 Object 对象 TABLE B tbl 其中 obj simeProp tbl COLUMN 因为我的客户需要修改查询 学习 HQL 或映射未映射的表是不可能的 如果不是
  • SQL,缺少结尾,但为什么呢?

    我对 mySQL 过程有疑问 MySQL Workbench 建议我它错过了我的第一个 SET 的 结束 但没有错过第二个 SET 的 结束 我不知道为什么 DELIMITER drop procedure if exists pay10p
  • 使用 zxing 解码时返回图像中的条形码位置

    在我当前的项目中 我需要知道如何使用 zxing 获取图像中条形码的位置 以像素或像素范围为单位 我的图像源是 Kinect v2 主要目的是将条形码与车身框架关联起来 这需要位置信息 我使用的是标准 Kinect v2 SDK 和 Vis
  • 使用 VS Android 模拟器运行调试时 Xamarin Forms Android 应用程序崩溃

    我创建了一个基本的 Xamarin Forms 应用程序 它在 iOS 模拟器上运行良好 然而 当我尝试使用 VS Android 模拟器 5 1in Marshmallow 运行时 它每次打开时都会崩溃 即使我尝试在没有调试的情况下运行
  • 使用 Java2D 绘制多个圆

    我正在尝试使用Java2D 进行一些简单的图形编程 我开始很简单 只是尝试在 JFrame 中显示几个圆圈 我成功显示了一个圆圈 但是当添加第二个圆圈时 仅显示添加到 JFrame 的最后一个圆圈 我使用 Circle 类来定义我的圆并重写
  • 为什么 Django 站点不能嵌入另一个 HTML(iframe)中?

    我尝试在另一个 html 页面中嵌入 django 表单 但它不起作用 我尝试了其他 django 网站 但没有任何效果 还对其他一些网站进行了测试 django 是否限制在 iframe 中使用 如何让它发挥作用 需要嵌入的表格编程竞赛形
  • 如何为 AngularStrap datetimepicker 显示“无效日期”验证消息

    我能够验证我的 AngularStrap 日期时间选择器 但我无法区分所需的验证失败和无效的日期失败 屏幕上显示的唯一错误是必需的错误 无论它是必需的还是无效的字符串 如果输入的字符串无效 是否可以显示不同的验证消息 这是我的代码 div
  • 从锯齿状数组初始化中省略 c# new

    From http msdn microsoft com en us library 2s05feca aspx http msdn microsoft com en us library 2s05feca aspx 请注意 您不能在元素初
  • 在 WPF TreeView 中对子对象进行分组

    我试图让我的树视图根据相似项目的内容对它们进行分组 为了保持通用 我的对象层次结构可能如下所示 Objects Object Group 1 项目 1 类型 A 项目 2 类型 A 项目 3 类型 B 项目 4 类型 B 现在 我的 Tre
  • 洗牌算法分析

    我遇到了以下洗牌算法的分析 问 给定一个不同整数的数组 给出一个算法来随机 对整数重新排序 以便每个可能的重新排序都是相等的 可能 换句话说 给定一副牌 你如何洗牌 使得任何牌的排列都是同样可能的 好答案 按顺序遍历元素 将每个元素与 数组
  • Python struct.pack() 用于列表中的各个元素?

    我想将列表中的所有数据打包到单个缓冲区中以通过 UDP 套接字发送 该列表相对较长 因此为列表中的每个元素建立索引非常繁琐 这是我到目前为止所拥有的 NumElements len data buf struct pack d NumEle