【问题标题】:How to pull variables from line of data file in Python [closed]如何从Python中的数据文件行中提取变量[关闭]
【发布时间】:2018-08-04 01:20:13
【问题描述】:

我有一个大数据文件,其中每一行如下所示,其中每个管道分隔的值代表一个一致的变量(即 1517892812 和 1517892086 代表 Unix 时间戳,最后一个管道分隔的对象将始终是 UnixTimestamp)

264|2|8|6|1.32235000|1.33070000|1.31400000|1257.89480966|1517892812
399|10|36|2|1.12329614|1.12659227|1.12000000|148194.47200218|1517892086

如何提取在 Python 中创建变量所需的值?例如,查看一行并从中获取 UnixTimestamp=1517892812(和其他变量)。

我想提取每行的每个相关变量,使用它们,然后查看下一行并重新评估所有变量值。

我应该在这里处理 RegEx 吗?

【问题讨论】:

  • 使用 csv 模块。

标签: python regex python-2.7


【解决方案1】:

你可以使用正则表达式和re.search():

int(re.search(r'[^|]+$', text).group())

【讨论】:

    【解决方案2】:

    如果所有变量都只是数字,并且您想要一个包含所有值的矩阵,您可以简单地执行以下操作:

    [int(line.strip().split('|')) for line in your_data.splitlines()]

    【讨论】:

      【解决方案3】:

      不需要正则表达式,你可以使用split()

      int(a.strip().split('|')[-1])
      

      【讨论】:

      • 这很简单直接。
      • @JoshGoodnow 如果它解决了您的问题,请不要忘记接受这个答案。只需单击左侧的复选框。
      • 谢谢提醒,再过 7 分钟我无法接受答案。
      猜你喜欢
      • 2014-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多