我要翻译《Think Python》- 004 第二章 变量, 表达式和语句 (3)

  随着程序越来越大,越来越复杂,其阅读难度也是越来越大。正式语言是庞杂晦涩的,通常很难查看其中一段代码就弄明白它在做什么和这么做的原因。
  出于这个原因,在程序中添加一些用自然语言说明程序的作用的文字,这是一个很好习惯。 这些说明文字就叫做注释,一般以 # 开始。
  # compute the percentage of the hour that has elapsed
  percentage = (minute * 100) / 60
  在这个例子中,注释内容是单独一行显示的。当然你也可以把注释放在代码行的最后:
  percentage = (minute * 100) / 60 # percentage of an hour
  每一行代码中从 # 开始的内容都会被忽略——这部分内容对程序无任何影响。
  注释在记录程序代码的非明显特性的时候是非常有用,只要能让读者能弄明白代码的作用这就是合理的,因此用注释解释原因是非常有用的。
  但是下面这个注释却是无用的,多此一举的。
  v = 5 # 赋值5 给变量 v
  而下面这个注释却包含着代码中没有的有用的信息
  v = 5 # 5米/秒的速度
  因此,好的变量名可以减少注释的内容,但是太长的变量名又会显得过犹不及,这个地方需要你自行权衡处理。

 

2.10 调试

  此时你最容易犯的语法错误是使用了非法的变量名,就像 class 或 yield,这些关键字是不能作为变量名的,又或者像odd~job和US$,这些变量名包含非法字符。
  你如果在一个变量名中间加一个空格,Python就会认为这是两个没有操作符的操作数:
  >>> bad name = 5
  SyntaxError: invalid syntax
  对于语法错误,错误信息通常没有太大的帮助,最常见的语法错误就是 SyntaxError: invalid syntax 和 SyntaxError: invalid token。
  运行时错误最常见的就是“先用后定义”,也就是在给某变量赋值之前就使用该变量,例如你把一个变量名拼写错了就会发生这个错误:
  >>> principal = 327.68
  >>> interest = principle * rate
  NameError: name 'principle' is not defined
  另外变量名是区分大小写的,例如LaTeX和latex就是不一样的。此时,最容易导致语法错误的情况就是使用变量的顺序。例如:计算1/2 π,你可能会输入如下代码:
  >>> 1.0 / 2.0 * pi
  但是,按优先等级,除法是先进行计算,因此你将会得到的结果是π/2,而不是1/2π。此时Python并不知道你到底想要什么结果,因此在这个例子中你得不到任何报错信息,因而你得到了一个错误的结果。

 

2.11 术语表

  值:
    数据基本单位,如数字或字符串,程序操作等
  类型:
    值的分类。到目前为止有整数,浮点数和字符型。
  整数:
    表示整数的类型
  浮点型:
    用小数表示的数字类型
  字符型:
    表示字符序列的类型
  变量:
    值引用的名称
  语句:
    表示命令或操作的代码。目前为止,语句包含赋值和打印语句。
  赋值:
    为变量赋值的语句
  状态图:
    用来表示变量及其值引用的图形
  关键字:
    编译器用来解析程序的保留字。例如if,def和while等关键字是不能用来作为变量名的。
  运算符:
    用来表示简单计算,如加减乘除或字符串级联的特殊字符
  操作数:
    运算符所操作的值
  向下取整:
    两数相除忽略小数部分
  表达式:
    由变量、运算符、值等表示求得数值的组合
  求值:
    通过操作来简化表达式并获得一个值
  优先法则:
    用于计算涉及多个运算符和操作数的表达式的顺序的规则集
  连接:
    把两个操作数首尾相连
  注释:
    程序中的为了让其他程序员(或任何阅读源代码的人)提供的对程序的执行没有任何影响信息。

 

2.12 练习

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wppzgd.html