用户如何输入具有特定扩展名的文件名?

玫瑰花

我正在尝试使用python创建一个程序,用户将输入一个fasta文件,该文件以后可用于修剪引物。我正在尝试使用BioPython来执行此操作,但是我一直遇到错误。我尝试过的代码如下:

from Bio import SeqIO

in_file = input("Enter filename with extension:")

def is_fasta(in_file):
    with open(in_file) as handle:
        fasta = SeqIO.parse(handle, "fasta")
        return any(fasta)

is_fasta(in_file)

我希望能够请求一个fasta文件,并且如果输入的文件不是fasta,请显示错误消息并提示您重试。

您是否熟悉Python的try声明?您可以尝试打开并读取文件,如果该文件不起作用(即引发异常),请再次提示用户。

我不知道Bio.SeqIO,甚至Bio模块也不知道我猜错误是伴随您致电给您的SeqIO.parse您可以尝试如下操作:

from Bio import SeqIO

while True:
    in_file = input("Enter filename with extension:")
    try:
        with open(in_file) as handle:
            fasta = SeqIO.parse(handle, "fasta")
    except:
        print("Could not read file. Please ensure it is a 'fasta' file and try again.")
        continue
    break

毫无例外,的分配fasta应该已经奏效,我们将通过跳出while循环break

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将扩展名附加到具有特定文件名格式的文件

GREP:排除具有特定模式的文件名,同时包含特定的文件扩展名

显示所有具有特定扩展名的文件的文件名

具有特定字符串或特定扩展名的文件名的 for 循环

具有特定扩展名的文件名的文件路径

提取具有扩展名URL的文件名

如何附加到具有特定扩展名的文件

从具有多个扩展名的文件名中删除某些扩展名

如何从没有扩展名的路径中获取特定文件名python

使用rsync复制除具有特定扩展名的某些文件名以外的所有文件

匹配具有特定扩展名的所有文件名(特定文件名正则表达式除外)

如何删除特定文件夹中具有特定扩展名的所有文件?

获取具有特定扩展名的所有文件

查找具有用户指定扩展名的文件

崇高文本正则表达式以查找具有特定扩展名的文件名

从资产文件夹获取仅具有.txt扩展名的文件的文件名

从相同扩展名但不具有扩展名(MATLAB)的目录中获取文件名

如何将所有具有特定扩展名的文件移动到特定目录?

如何获取具有完整路径以及扩展名的所有文件名的列表

从多个目录复制具有特定扩展名的文件

打印具有特定扩展名的文件

查找具有特定扩展名的文件

使用 grep 移动具有特定扩展名的文件

Bash脚本检查具有特定扩展名的文件

递归查找具有特定扩展名的文件

删除具有特定扩展名的文件的脚本问题

循环浏览具有特定扩展名的文件

Gradle-删除具有特定扩展名的文件

使用Chokidar监视具有特定扩展名的文件