一个小案例学习python语法常识

这是树哥讲python系列的第三篇文章。

如何学习计算机编程这个问题是大家非常关注的问题,更加确切的说,如何自学计算机编程是一个很关键的问题。树哥觉得采用“案例+刻意练习”的方法会比较有助于快速入门和掌握基础知识。

一、案例分析:

案例

题目:用户输入自己的成绩,要求:

学习成绩>=90分的同学用A表示,60-89分之间的用B表示, 60分以下的用C表示。

分析:

需要实现:

1.用户输入一个数字。

2.判断这个数字在哪个区间?90分之上为A,60-90为B,60以下为C。

3.输出用户所在的区间。

通过分析可以看出,第一步输入和第三步输出都是需要进行交互,第一步需要让用户进行输入,并且使用一个容器来接受用户的输入。第三步要输出,直接需要展示的内容展示给用户。

这就引出几个概念:

input(“要展示的信息”):通过这个功能可以接受用户的输入信息。

变量:就是一个容器,可以放置用户的输入信息。

print:要展示的信息。

在这个案例中,我们需要有input(“请输入分数”)之类的语句来让用户输入,同时还会申明一个变量 sorce 来接受用户输入的信息。

那么第一条语句就可以是:

score = input (“input score:\n”)

也就是说,让用户输入一个分数,然后把这个分数放在变量score之中。

最后一条语句就可以是:

print(score,grade)

含义就变成了输出:用户输入的分数,级别。在这里定义了一个级别grade变量,用于放置是A、B或C的信息。

那么就需要实现程序的主体了,这个程序无非就是需要判断score的大小,和90分比较,和60分比较。如果大于等于90分,就把“A”装到grade之中,如果大于等于60就把“B”放入到grade之中,其余就把“C”放入grade之中。

整个程序逻辑非常简单,本质上是一个分支判断,不同的分支有不同的结果,语句如下:

if score >=90:

grade = ‘A’

elif score >= 60:

grade = 'B'

else:

grade = 'C'

这个语句非常好理解, if后面是条件,满足就执行冒号后的内容;相当于有if,elif和else三个分支。

不过,如果把这个程序代码输入执行的话,就会发现执行不下去,有问题。主要有两个问题:

python是严格缩进的程序,if判断之后要执行必须缩进,代表它们所属。

用户通过input输入的其实是字符,我们用它和数字比较当然会出现错误了。

所以,最终语句可以调整成如下样子:

image.png

可以看出程序是有缩进,并且在判断语句时,score前面加了一个叫eval的东西。

eval是一个函数,作用是把用户输入的具体的分数之外的引号去掉了,相当于变成了整数。

这样的一个案例就实现成功了,仅仅是8条代码,非常简单吧?请你也在不看案例的情况下输入一下这几行代码,并且执行一下看看效果。

当然,这个程序还不太完善,没有限制用户输入的是不是数字,或者是不是0-100之间的数字,不过这些并不重要,因为我们要通过这个案例来简单学习一下python的语法常识。

Python语法常识

我们通过这个案例可以观察:

image.png

代码高亮

我们第一眼看到这个程序的时候,就会发现代码有着不同的颜色,这就是代码高亮。

代码高亮只是编辑器辅助我们编程使用,例如不同的内容可能有不同的颜色,例如案例中,解释用了红色,语法用了橙色,字符用了绿色,函数用户紫色,变量用了黑色。但其实这些颜色本身对程序没有任何作用,只是帮助我们编程时,更加容易理解程序。

当然,这些高亮颜色在不同的编辑器中可能也不同,自己也可以在编辑器中自己定义。

严格明确缩进

我们谈到,第一次编写没有缩进的程序会出现运行错误,这是因为缩进也是python的语法体系。

在python中,缩进是要明确约定,可以为一层缩进,也可以为多层缩进,如下:

image.png

通过这样的缩进,可以确认代码的归属,知道那些条语法属于同一个体系之内;一些没有严格缩进的的编程语言则需要使用end之类语句来标识语法框架。

不过,在python中没有明确缩进多少,只要在一个程序中保持一致就好。如果一层缩进是四个空格,那么所有的一层缩进就都是四个空格,两层缩进就是八个空格。

注释

第一行红色以#号开头的语句是注释,注释本身对程序没有任何影响,主要是为程序员读程序时的方便。

当前的这个程序很简短,有没有注释其实没有什么关系,不过我们可以想象一下,如果是数万行的代码,又是几年之后再看这段代码进行维护的时候,有没有注释就天差万别了,如果没有注释很大概率自己都会读起来很费劲。

更何况,有的时候我们需要团队作战,一个比较清晰明了的注释,也可以帮助团队伙伴快速了解程序,更能形成紧密的团队作战。

如果是多行注释时,可以采用‘’‘ 三引号来在头尾标明。

变量

在案例中,score 和 grade 都属于变量。什么是变量呢?其实可以理解为一个一个小储存格子,这个变量就是给这个存储的小格子起的名字。

例如: grade = 'A', 相当于找一个存储的格子,把这个格子命名为 grade,然后字符‘A’放置到这个格子之中。

命名存储格子的原因主要是为了程序员记忆与编程,本质上和一串序列号代表的格子并没有什么不同。

当这个存储的格子只在一个程序中使用,就可以定义其为私有变量或局部变量,如果它需要在不同程序中使用,则可以定义为公有变量,或者全局变量。

在python中,给变量起名字也是有一点规则的:

字母、数字、下划线,甚至汉字或他们的组合都可以当成变量的名字。

大小写敏感,也就是说同样单词大小写是不同的变量。

不能和保留字相同。

什么是保留字呢?

保留字是python语法的基础词汇,如果你起的变量名字和它们相同,python的编译器将搞不清楚这是变量呢,还是语法呢,所以就会报错,无法执行。

下面的这张图,列出了python的一些常用的保留字,基本都是一些单单的单词或者单词的缩写,比较好理解。

image.png

总结:一个小小的案例展示出来python的一些语法常识,例如语法高亮、严格缩进、注释和变量。本质上,计算机编程语言就是我们和计算机之间沟通的语言,要想和严谨的计算机进行良好的沟通,就必须符合他们能认知的语法,就必须学习他们的语言:编程语言。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190601A04V7K00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券