2024-05-29 02:30:50 发布
网友
我只是想理解下面的代码:
names = [{'name': alice}, {'name':bob}, {'name': david}] with_comma= ', '.join(name['name'] for name in names[:-1])
那里有什么?它如何从相应的词典中提取名称
此外,我从教科书中学到的是,我们应该在for name in names[:-1]之后写下for循环每次迭代后会发生什么,它在哪里
for name in names[:-1]
我希望我写得很清楚。谢谢你的帮助
您需要将代码分解为更小的部分,并理解更小的部分才能理解整个代码
names是一个包含三个字典的列表,每个字典只包含一个带值的键'name'。这些值显然是在我们没有给出的代码的其他部分中定义的,因为这些值似乎已分配给变量alice、bob和david
names
'name'
alice
bob
david
names[:-1]表示“名称的所有元素,除了最后一个”,因此它实际上是[{'name': alice}, {'name': bob}]
names[:-1]
[{'name': alice}, {'name': bob}]
name for name in names[:-1]是一个生成器,它一次生成一个names[:-1]的元素。因此,它首先产生{'name': alice},然后产生{'name': bob},然后完成,因为没有更多的东西可以产生
name for name in names[:-1]
{'name': alice}
{'name': bob}
name['name']尝试使用键'name'索引变量name。当name具有值{'name': alice}时,name['name']是定义字典时alice的值
name['name']
name
string的.join()方法将iterable作为参数,并将iterable中的每个元素放在一个新字符串中,原始字符串的副本卡在每个元素之间
.join()
因此,这段代码:
alice = 'Alice' bob = 'Bob' david = 'Whatever' names = [{'name': alice}, {'name': bob}, {'name': david}] with_comma= ', '.join(name['name'] for name in names[:-1])
结果with_comma的值为'Alice, Bob'
with_comma
'Alice, Bob'
但是,如果这是Python培训中的代码,我建议您再上一门课或课程,因为它在教授Python方面做得不是很好,在没有解释基础知识的情况下,就引入了这些复杂的内容
您需要将代码分解为更小的部分,并理解更小的部分才能理解整个代码
names
是一个包含三个字典的列表,每个字典只包含一个带值的键'name'
。这些值显然是在我们没有给出的代码的其他部分中定义的,因为这些值似乎已分配给变量alice
、bob
和david
names[:-1]
表示“名称的所有元素,除了最后一个”,因此它实际上是[{'name': alice}, {'name': bob}]
name for name in names[:-1]
是一个生成器,它一次生成一个names[:-1]
的元素。因此,它首先产生{'name': alice}
,然后产生{'name': bob}
,然后完成,因为没有更多的东西可以产生name['name']
尝试使用键'name'
索引变量name
。当name
具有值{'name': alice}
时,name['name']
是定义字典时alice
的值string的
.join()
方法将iterable作为参数,并将iterable中的每个元素放在一个新字符串中,原始字符串的副本卡在每个元素之间因此,这段代码:
结果
with_comma
的值为'Alice, Bob'
但是,如果这是Python培训中的代码,我建议您再上一门课或课程,因为它在教授Python方面做得不是很好,在没有解释基础知识的情况下,就引入了这些复杂的内容
相关问题 更多 >
编程相关推荐