题目展示:
如何用列表生成式生成[1,4,9,16,25,36,49,64,81,100]
解题思路:
对于一只出识编程的草履虫来说,这道题一个字:难!
恐惧抛一边儿,冷眼一看,这不就是从1到10求幂嘛!
目前的Python知识储备停留在列表阶段,此题咋解?
审视列表创建的四种方式:[]基本语法创建、list()、range()、推导式生成
目光定格在了最后一种上面不肯离开,原因是它看上去是那么丝滑,那么问题来了,在还没学 for 循环 和 if 语句的情况下
如何实现?
草履虫怒发冲冠,决定照猫画虎
a = [x**2 for x in range(10)] #幂有了,for循环也有了,走一个
a
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] #有0不要,少100
接下来解决不要0的问题,同时得把10给拉进来
c = [x**2 for x in range(11) if x!=0] #range扩1,if语句让x不等于0,运行
c
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100] #和题目要求一致,此题解
草履虫的反思:
再伟大的思想也需要实践去实现
再弱小的生命也可以尽情去尝试
再复杂的代码也能够大胆去编程
也许你有更优解
你的鼓励是我创作的动力
欢迎在评论区留言互动