我在使用windows的pyhthon shell提示符中试过这段代码。但我得到的错误如下
>>> python -m twobitreader hg19.2bit < example.bed
SyntaxError: invalid syntax
我也尝试过你发送的代码
import twobitreader
with open("fas.fa", "w") as output, open('example.bed') as bedfile:
twobit = twobitreader.TwoBitFile('hg19.2bit')
twobitreader.twobit_reader(twobit, input_stream=bedfile, write=output)
当我尝试执行上面的代码时,我收到错误
Traceback (most recent call last):
File "D:/genome/sample6.py", line 3, in <module>
with open("fas.fa", "w") as output, open('example.bed') as bedfile:
IOError: [Errno 2] No such file or directory: 'example.bed'`Filed:
我无法准确追踪错误。
答案 0 :(得分:0)
您正在尝试在Python解释器中执行 shell命令。解释器不一个shell。
在shell中,您仍然可以执行命令行代码所使用的相同代码。 2bit
执行任何操作都需要twobit_reader()
文件和输入流。 first line of the function读取:
if input_stream is None: return
库将hg19.2bit
文件作为TwoBitFile
对象;根据命令行工具的文档字符串, input_stream
参数必须是使用 BED格式的文件或其他可迭代参数:
区域应在stdin上以BED格式提供
chrom start(0-based) end(0-based, not included)
要使用区域的BED文件,请执行
python -m twobitreader example.2bit < example.bed
从Python脚本中,example.bed
输入应该是以input_stream
传入的打开文件:
import twobitreader
with open("fas.fa", "w") as output, open('example.bed') as bedfile:
twobit = twobitreader.TwoBitFile('hg19.2bit')
twobitreader.twobit_reader(twobit, input_stream=bedfile, write=output)
项目文档提供了BED格式的链接:http://genome.ucsc.edu/FAQ/FAQformat#format1