我正在开发一个定义测试器(你输入单词、他们的词性和每个单词的同义词,它会测试你)。我遇到的问题是得到这个词的部分:
def get_word(): # this is in another function, that's why it is indented
import easygui as eg
word_info = eg.multenterbox(msg = 'Enter in the following information about each word.'
, title = 'Definition Tester'
, fields = ['Word: ', 'Part of Speech: ', 'Synonyms (separated by spaces): ']
, values = []
)
return word_info
for i in range(n):
my_list = get_word()
print my_list # for testing
word, pOS, synonyms = my_list[0], my_list[1], my_list[2]
word = word.capitalize()
synonyms = synonyms.split(', ')
words_list += word
print word # for testing
test_dict[word] = [pOS, synonyms]
print words_list # for testing
但是,words_list
在函数应用于它们之后最终成为单词list(word)
---我不知道为什么。
例如:如果唯一的单词是 'word',words_list
结果是['w', 'o', 'r', 'd']
. 如果有两个词(“狗”、“猫”),words_list
结果是['d', 'o', 'g', 'c', 'a', 't']
。这是我的输入(输入get_word()
):单词:'myword',词性:'n',同义词:'同义词,定义'。
这是我得到的输出:
['myword', 'n', 'synonym, definition']
Myword
['M', 'y', 'w', 'o', 'r', 'd'] # Why does this happen?
这是我的程序唯一有问题的地方......如果我能就如何解决这个问题以及问题所在获得一些意见,我将不胜感激。谢谢!