我想使用Bioperl模块SeqFeature,但是代码不起作用。
我尝试使用Padre编写代码。
use Bio::SeqIO;
my $seqio_object = Bio::SeqIO->new(-file => "sequence.gb" );
my $seq_object = $seqio_object->next_seq;
print ref($seq_object);
for my $feat_object ($seq_object->get_SeqFeatures) {
print "primary tag: ", $feat_object->primary_tag, "\n";
for my $tag ($feat_object->get_all_tags) {
print " tag: ", $tag, "\n";
for my $value ($feat_object->get_tag_values($tag)) {
print " value: ", $value, "\n";
}
}
}
我希望打开文件,并希望其中的信息显示在输出窗口中,但它有例外。
我该如何解决这个问题?
答案 0 :(得分:1)
当您为要求命名文件存在的操作提供文件名时,操作系统会给出该消息,但实际上却没有。例如,当代码尝试打开一个不存在的文件进行读取时。
根据您提供的最少信息,可以认为该错误是由于尝试打开sequence.gb
而引起的。如果是这样,则意味着路径sequence.gb
没有引用现有文件。
请记住,路径sequence.gb
表示当前工作目录中的名称sequence.gb
,因此您的名称错误,并且对当前工作目录做出了错误的假设。
如果要访问与脚本位于同一目录中的文件,则应使用以下内容:
use FindBin qw( $RealBin );
"$RealBin/sequence.gb"
答案 1 :(得分:0)
我认为您需要将完整路径或位置路径写入文件
-file => "/home/user/sequence.gb"
-file => "./sequence.gb"
我希望这可以解决您的问题。 祝你好运!