Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中选择和上载文件_Python_Python 2.7_File_Import_Text Files - Fatal编程技术网

如何在python中选择和上载文件

如何在python中选择和上载文件,python,python-2.7,file,import,text-files,Python,Python 2.7,File,Import,Text Files,我正在写一个程序,它会问你用户想要读什么文本文件,然后开始读用户输入的任何文件名。以下是我到目前为止的情况: import sys import os import re #CHOOSE FILE print "Welcome to the Parsing Database" raw_input=raw_input("enter file name to parse: ") #ASSIGN HEADERS AND SEQUENCES f=open("raw_input", "r") head

我正在写一个程序,它会问你用户想要读什么文本文件,然后开始读用户输入的任何文件名。以下是我到目前为止的情况:

import sys
import os
import re

#CHOOSE FILE
print "Welcome to the Parsing Database"
raw_input=raw_input("enter file name to parse: ")

#ASSIGN HEADERS AND SEQUENCES
f=open("raw_input", "r")
header=[]
sequence=[]
string=""
for line in f:
    if ">" in line and string=="":
         header.append(line[:-2])
    elif ">" in line and string!="":
        sequence.append(string)
        header.append(line[:-2])
        string=""
    else:
        string=string+line[:-2]
sequence.append(string)

前两行工作,但它说它找不到我输入读取的文件。请帮忙!谢谢。

在我的脑海中,我认为
f=open(“raw\u input”,“r”)
需要
f=open(raw\u input,“r”)
,因为您试图引用变量
raw\u input
中包含的字符串,而不是试图打开名为raw\u input的文件。此外,您可能还应该将变量的名称更改为更可读的名称,因为
raw\u input()
是代码中使用的函数,也是一个变量,这使得它很难读取。您的代码还有其他特定问题吗?

f=open(“原始输入”,“r”)

“原始输入”是一个普通字符串。您必须将其引用为
raw\u input

另外,如果不使用
.read()
open()
方法,则不会有任何行,因此无法解析它们。从
raw\u input
提供的文件中读取行可以这样做:

import sys
import os
import re

#CHOOSE FILE
print "Welcome to the Parsing Database"
raw_input_file=raw_input("enter file name to parse: ")

#ASSIGN HEADERS AND SEQUENCES
testfile = open(raw_input_file, "r")
secuence = []
for line in testfile.read().splitlines():
    secuence.append(line)
for i in secuence:
    print i
testfile.close()

随时可能解析FASTA文件;)您的错误或具体问题是什么?您不应该使用
raw\u input
作为变量名。此外,您没有询问您具体需要什么帮助,也没有提及您是否有任何错误/障碍。
IOError:[Errno 2]没有这样的文件或目录:“raw\u input”
应该已经告诉您问题所在,您正在尝试打开一个名为“raw\u input”的文件不要使用上面一行的变量。谢谢,这是我的问题,我有引号,它把我弄糊涂了。命名它为raw\u input没有什么问题,因为函数是raw\u input(),当然,最好创建名称空间的变量,如file_raw_input或任何其他未采用的变量。@erm3nda该位更像是上下文建议,因为它看起来OP在区分不同的语法位时遇到了困难(有一种更好的说法)如果您编辑他们的脚本,然后修复原始输入名称仍然不起作用。他需要的不仅仅是一个建议。他们说这解决了他们的问题,所以我认为解决方案是好的。