擅长:python、mysql、java
<p>我有<a href="https://stackoverflow.com/questions/24000444/mock-command-line-arguments-for-python-script-with-optparse">a similar problem before,</a>,但是用<code>optparse</code>代替了<code>argparse</code></p>
<p>您不需要更改原始脚本中的任何内容,只需为<code>sys.argv</code>分配一个新列表,如下所示:</p>
<pre><code>if __name__ == "__main__":
from Bio import SeqIO
path = '/path/to/sequences.txt'
sequences = [str(record.seq) for record in SeqIO.parse(path, 'fasta')]
sys.argv = ['-f'] + sequences
main()
</code></pre>