逻辑不清楚
words = ['apple', 'bat', 'bar', 'atom', 'book','student','same']by_letter = {}
for word in words:
letter = word
if letter not in by_letter:
by_letter =
else:
by_letter.append(word)
by_letterrun的结果:
{'a': ['apple', 'atom'], 'b': ['bat', 'bar', 'book'], 's': ['student', 'same']}
代码来源:《Python for data analysis》第二版
代码目的:通过首字母将列表中的单词分类。
请问这段的的逻辑是什么?{:10_269:}看了好几遍
还是不懂为什么能够能够将列表中的元素按字母分类
???:run的结果中'a' , 'b'是哪里来的
for word in words
word就是每个单词,
word就是单词的开头
word就是每个键的首字符 words = ['apple', 'bat', 'bar', 'atom', 'book','student','same']
by_letter = {}
for word in words:
# word 相当于列表words中的一个元素,for循环将整个words列表中的每个元素都过了一遍
letter = word
# letter 是word字符串的第一个字符,就相当于将单词的第一个字母提取出来,识别
if letter not in by_letter:
by_letter =
# 如果识别出来的这个字母在字典中已经存在,那么就把相应的单词放入字典中对应的字母键下面
else:
by_letter.append(word)
# 如果识别出来的字母在字典中不存在,那么就在字典中添加相应的键和值
by_letter 挣扎起飞 发表于 2020-3-20 18:13
words = ['apple', 'bat', 'bar', 'atom', 'book','student','same']
by_letter = {}
for word in words: ...
请问解释的最后两句是不是顺序应该对调?{:5_109:} Rsynow 发表于 2020-3-20 20:40
请问解释的最后两句是不是顺序应该对调?
{:7_130:}解释的最后两句,我认为顺序应该对调才对!
页:
[1]