通过 sys.argv 在 bio python 中输入字符串

input string in bio python via sys.argv

我想通过 sys.argv 命令将存储在 txt 文件中的字符串作为 python 代码的参数。这是代码 script.py

import sys
seq = sys.argv[1]
print seq

这是存储在 seq.txt 中的字符串: AAABBBCC

现在当我运行

python script.py seq.txt

我明白了

seq.txt

作为输出。我怎样才能让它在 seq.txt.

中打印字符串

您需要打开文件才能阅读其内容。

当你这样做时:

seq = sys.argv[1]

您只是获取提供给脚本参数的字符串值。

您想要做的是获取 seq 并通过执行以下操作获取文件的内容:

fi = ""
with open(seq) as f:
    fi = f.readlines()

在那之后你可能需要做更多的事情,但我会把它留给你。 :)

在此处阅读 Python 个文件:Python Files

with open(argv[1]) as f:
    print(f.readlines())

您需要像这样打开文件,然后才能阅读和打印。

如果先将文件读入变量,然后传递给python会怎样?

$ my_var=$(<text_file.txt)
$ python python_file.py "$my_var"