Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.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 - Fatal编程技术网

如何将单词传递给数组而不是单个字符-Python

如何将单词传递给数组而不是单个字符-Python,python,Python,因此,我正在阅读python中的一个txt文件,希望得到该文件中所有单词的列表。我是这样做的 def parse_in(file_location, input_name): all_words = [] with open(file_location + input_name,'r') as f: for line in f: for word in line.split(): all_words += w

因此,我正在阅读python中的一个txt文件,希望得到该文件中所有单词的列表。我是这样做的

def parse_in(file_location, input_name):
    all_words = []
    with open(file_location + input_name,'r') as f:
        for line in f:
            for word in line.split():
                all_words += word
    f.close
    return all_words
它返回的不是所有返回实际单词的单词,而是单个字符的列表,如
['a','B','C']
等等

但在调试时,我可以看到变量字是一个实际的字,而不仅仅是字符。我哪里出错了?

试试这个:

def parse_in(file_location, input_name):
    all_words = []
    with open(file_location + input_name,'r') as f:
        for line in f:
            all_words += line.split()
    return all_words
试试这个:

def parse_in(file_location, input_name):
    all_words = []
    with open(file_location + input_name,'r') as f:
        for line in f:
            all_words += line.split()
    return all_words
使用

而不是

all_words += word
如果使用
+=
,则
word
将被视为一个序列,因此每个字符都会附加到列表中

或者,您可以使用
+=
,并将循环简化为:

for line in f:
    all_words += line.split()
使用

而不是

all_words += word
如果使用
+=
,则
word
将被视为一个序列,因此每个字符都会附加到列表中

或者,您可以使用
+=
,并将循环简化为:

for line in f:
    all_words += line.split()

all_words+=word
使用
word
中的项目扩展列表
all_words
。由于
word
是一个字符串,因此会附加字符,就像您使用
for
对其进行迭代一样


使用
all\u words.append(word)
将单词附加到单词列表中。

all\u words+=word
使用
word
中的项目扩展列表
all\u words
。由于
word
是一个字符串,因此会附加字符,就像您使用
for
对其进行迭代一样


使用
all_words.append(word)
将单词附加到单词列表中。

如果使用上下文管理器,则无需关闭文件,为简单起见,您可以读取整个文件并使用拆分方法

def parse_in(file_location, input_name):
    all_words = []
    with open(file_location + input_name,'r') as f:
        all_words = f.read().split()

    return all_words

如果您使用上下文管理器,您不需要关闭文件,为了简单起见,您可以读取整个文件并使用split方法

def parse_in(file_location, input_name):
    all_words = []
    with open(file_location + input_name,'r') as f:
        all_words = f.read().split()

    return all_words

f.close
不执行任何操作。将一个序列(字符串)添加到另一个序列(列表)中,得到一个由两个序列组合而成的序列。使用
list.append
f.close
不执行任何操作。将一个序列(字符串)添加到另一个序列(列表)中,得到一个由两个序列组合而成的序列。使用
列表。追加