我有一些代码,我在文本中接收一串语言。
我的目标是将这个输入转换成一个列表,并在字典中迭代这个列表,以用作值输出的键。
我期望的输出为[57、20、22、52、60...等],但目前我正在接收
[57、无、无、无、无、无、无......等]
我的第一个输出是正确的,但之后,它似乎没有找到正确的值在dict.
代码如下。
l_languages = []
language_dict = { 'Afrikaans' : 57, 'Arabic' : 20, 'Assistive communication' : 21, 'AUSLAN' : 22, 'Bosnian' : 52,'Burmese' : 60, 'Cantonese' : 23, 'Croation' : 54, 'Dutch' : 50,'French' : 24, 'German' : 25, 'Greek' : 26,'Hindi' : 27, 'Indigenous Australian' : 310, 'Indonesian' : 56, 'Italian' : 28, 'Japanese' : 62, 'Korean' : 48, 'Mandarin' : 29, 'Nepali' : 55, 'Polish' : 30}
data = "Afrikaans, Arabic, Assistive communication, AUSLAN, Bosnian, Burmese, Cantonese, Croation, Dutch"
language_list = data.split(',')
for language in language_list:
id = language_dict.get(language)
l_languages.append(id)
print(l_languages)
current output = [57, None, None, None, None, None, None....etc]
4条答案
按热度按时间hm2xizp91#
您忽略了语言列表中的白色。2您应该删除开头和结尾的空白,然后访问您的dict。
如果你只是在''处拆分列表,那么在后面的每种语言前面都有一个白色。2只是第一种语言没有,这解释了你当前的输出
0yycz8jy2#
看看你的
language_list
,它前面有空格,你需要在每个元素上调用strip()
,然后得到你期望的结果wqsoz72f3#
yks3o0rb4#
最简单的方法