为何这两行代码运行结果不同,答案却一致?

ID:21073 / 打印

为何这两行代码运行结果不同,答案却一致?

为何我这两行代码运行结果不同,答案却一致?

问题:

threes = [range(3, 31, 3)] threes = list(range(3, 31, 3))

答案:

虽然参考资料中的答案都相同,但运行结果确实不同,这是因为:

threes = [range(3, 31, 3)]

这行代码创建了一个嵌套列表。range(3, 31, 3) 返回一个生成器,表示从 3 到 30(不包含 30)以 3 为步长的数字序列。然后,threes 列表将这个生成器作为其唯一的元素。

threes = list(range(3, 31, 3))

这行代码直接将 range(3, 31, 3) 生成的序列转换为一个列表。因此,threes 现在是一个列表,其中包含从 3 到 30(不包含 30)以 3 为步长的数字。

要获得与第二行代码相同的结果,只需要删除嵌套列表的外部 []:

threes = range(3, 31, 3)
上一篇: Go 语言中数组函数的晚绑定:为什么所有函数都返回 5?
下一篇: Python函数交互:如何让两个函数相互作用?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。