gpt4 book ai didi

python - 从文本文件执行管道命令

转载 作者:太空宇宙 更新时间:2023-11-03 18:44:12 25 4
gpt4 key购买 nike

我有一个文本文件 (songs.txt) 包含许多类似于下面引用的文本的行。我想要的是将左侧与右侧分开。双方将根据他们所代表的立场&&&&&&来确定。有两个部分,搜索字符串和歌曲长度。例如:

Don Diablo - M1 stinger &&&&&& 204

左侧部分&&&&&&右侧的文本,右侧部分右侧的部分&&&&&&

Left part: Don Diablo - M1 stinger

Right part: 204

从此以后,这些命令可以通过 PIPE 执行。文本文件中每行有两个命令,那么它是与右侧部分相同长度的延迟(歌曲长度,以秒为单位设置)。

例如:

search Don Diablo - M1 stinger

play 1

现在在同样的 204 秒处将有一个休息时间。然后它从文件中获取下一行。喜欢并一直如此。

问题是,我已经用 Python 玩了一下,现在我真的不知道。我读过一些解决方案,但它们并没有我想象的那么有帮助。

如果有人能告诉我如何在实践中做到这一点,我会很高兴?这可能吗?

如果有人想破解这个,这里有 songs.txt

注意:我使用的是 Python 2.7.4

最佳答案

我不清楚“管道”命令的含义,但我认为解决方案包含三个关键要素:

  1. 在 Python 中,文件是“可迭代的”,这意味着您可以在 for 循环的右侧使用打开的(文本)文件,并且它将迭代文件的行:

    for line in open('songs.txt'):
  2. 可以使用字符串对象的 partition 方法来分割一行的左侧和右侧:

        left, sep, right = line.partition('&&&&&&')

    请注意,“right”元素将包含行结束字符,并且 leftright 都可能包含其他空格。您可能想使用 strip 删除所有这些。

        left = left.strip()
    right = right.strip()
  3. 实际运行命令可能应该使用 subprocess 来完成,它可以处理阻塞调用(使用callcheck_call)或使用Popen附加管道在后台运行命令。请注意,所有这些命令都需要一个参数列表,而不仅仅是一个命令行字符串 - 子流程文档应该在这里提供帮助。

关于python - 从文本文件执行管道命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19916034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com