code就就是一种「语言」,一种计算机能读懂的语言。计算机是一个傻逼,他理解不了默认两可的任何东西。比如,你让你老公去买个西瓜,你老公会自己决定去哪里买,买几个,找个搞活动打折的买,总之,你给他钱,他就给你买回来让你吃到爽的西瓜。
但是,你想让计算机买一个西瓜?你要告诉他:去门口的鲜丰水果店买,买沙瓤无子西瓜,若旁边的店打折,就去旁边的店买。总之,你不能让计算机做任何决定,你要清楚的告诉他所有情况下的所有的行为。而「code,就是你和计算机交流的语言,或者说是对计算机的命令」。
我们就「把计算机理解为一个人」,这个人很死板,只能按照你给他的详细命令进行工作。而这个人工作速度特别特别快,并且保证工作结果都是正确的。
编程语言其实不重要,重要的是要「明白如何和计算机交流」,明白了这个也就能看懂代码了。
编程 = 算法 + 数据结构
Python就是一种和计算机交流的语言,这种语言单词(关键字)不多,规则也少。下面所有的内容都基于Python。
1 判断
当你命令计算机做一件事情的时候,这件事情可能分一些情况进行处理。判断通常涉及到的关键字有:
比如,你让计算机买西瓜,希望买到打折的西瓜,不打折的话你就不吃了。
通过这个命令,计算机变得更智能了一些,他可以根据情况执行你的命令。
水果店不打折你就吃不到西瓜,你不开心。那么,我们让计算机更智能一些。假如西瓜打折,就买西瓜;不打折的话让计算机跟老板讲价,老板同意打折,就买西瓜;不同意,不吃了;
虽然和老板讲价一般都能讲成功,但是有的老板给力给打五折,有的老板只给打九折。你就想了,若老板打五折,我就买两个,今天吃一个,明天吃一个。若老板不给力,打折不到五折,就买一个,今天先吃,明天再说。
此外,有没有发现,打着成功这段代码其实也可以写成:
由此可见,计算机也不是完全的一成不变,只要你给他的命令他能理解并且不会模棱两可,他都可以完成工作。
的意思代表且,的意思代表或。和的顺序不同,结果也不同,可以通过括号来说明判断条件的优先级。
是比较a和b是否相等的意思,而=代表赋值。赋值的含义,我在下面的变量章节介绍。
2 循环
Python中涉及到循环的关键字包括:
上面的例子我们已经让电脑成功的可以根据不同的情况去水果店买西瓜了,但是若老板不打折,你就吃不到西瓜了。这时,你就想了,咱们小区门口有三家水果店,分别是鲜丰水果、四季水果和路边摊,一家不打折不代表三家都不打折啊,所以你希望电脑可以去三家都去看看,挑一家打折的店买西瓜。
循环的意义在于,可以用电脑对不同的对象执行相同的命令。
介绍下,break的意思就是结束循环。比如,这段代码中的break表示,我们一旦买了西瓜,那么就带西瓜回家。
3 变量
现在是时候介绍「变量」这个重要的东西了。
我们依然把电脑理解为帮我们工作的一个人,那么作为一个人,他需要有记忆力,而我们就可以通过变量去控制、利用计算机的记忆力。
变量可以理解为计算机的一个记忆单元,计算机拥有极好的记忆力,所以,可以随心所欲的使用,用完了就扔,需要了就要。(当然,说随心所欲是不严谨的,但是你可以理解为随心所欲)
那为什么叫变量呢,就是因为可以改变。为什么要改变呢?比如我们都有自己的年龄,我今年18,明年就19了。所以,’年龄’在我的记忆里是每年改变的。
变量对应的一个东西叫常量,常量你现在可以不用理解。
现在,计算机又要去买西瓜了。不过这次,你希望计算机可以在三个水果店中,找到一个打折力度最大的水果店去买水果。