python - 我们如何从Python文本中提取特定的测试

标签 python

我有一个名为 ABC 的函数的输出,如下所示:

19/09/09 10:34:37 INFO tool.ImportTool:  --incremental append
19/09/09 10:34:37 INFO tool.ImportTool:   --check-column DTIN
19/09/09 10:34:37 INFO tool.ImportTool:   --last-value 2019-07-27 00:00:00.0
19/09/09 10:34:37 INFO tool.ImportTool: (Consider saving this with 'sqoop job --create')

如何在 python 中获取 --last-value2019-07-27 00:00:00.0 将是动态的。

注意:我有大约 100 行数据作为输出,但这里我只给出了最后 4 行。

预期--last-value = 2019-07-27 00:00:00.0 这里的日期是基于输出的动态。

最佳答案

您可以使用字符串切片或正则表达式从输入中获取此日期。

  1. 字符串切片:

    text = """19/09/09 10:34:37 INFO tool.ImportTool: --incremental append
    19/09/09 10:34:37 INFO tool.ImportTool: --check-column DTIN
    19/09/09 10:34:37 INFO tool.ImportTool: --last-value 2019-07-27 00:00:00.0
    19/09/09 10:34:37 INFO tool.ImportTool: (Consider saving this with 'sqoop job --create')"""
    
    keyword = "--last-value"
    idx = text.index(keyword) + len(keyword) + 1  # keyword index + length of keyword + 1 (space)
    last_value = text[idx: text.index("\n", idx)]
    
  2. Regular expression :

    import re
    
    last_value = re.search(r"--last-value (.+)\n", text).group(1)
    

关于python - 我们如何从Python文本中提取特定的测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57853683/

相关文章:

python - 在 Python 中按开始和停止字符串值切片

python - ConvNet 中的 col2im 实现

python - 如何使用 python opencv 提取内部轮廓(孔)?

Python 将宏添加到现有 XLSM

javascript - Python 中访问可能不存在的 k/v 对值的最佳实践?

python - 比较具有相同 id 的 Pandas 数据帧的几个值

python - easy_install 和文件权限

python - 在 MAC OS X 上安装 PocketSphinx

python - 为什么从 np.datetime64 到 float 和 back 的转换会导致时差?

java - 谷歌数据实验室 : Java not installed