购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3 基本命令

Python是一种非常简单的语言,最简单的语句就是print,使用print语句可以打印出一系列结果。另外,Python要求严格的代码缩进,以Tab键或者4个空格进行缩进,代码按照结构严格缩进,例如:

如果需要注释某行代码,可以在代码前面加上“#”,例如:

1.3.1 数字

在Python中,解释器表现得就像一个简单的计算器:可以向其输入一些表达式,它会给出返回值。表达式语法很直白:运算符+,-,*和/与其他语言一样(例如Pascal或C);括号(())用于分组。例如:

整数(例如,2,4,20)的类型是int,带有小数部分的数字(例如,5.0,1.6)的类型是float。除法“/”返回的永远是一个浮点数。如要使用floor除法并且得到整数结果(丢掉任何小数部分),可以使用“//”运算符;要计算余数可以使用“%”运算符,如:

通过Python,还可以使用**运算符计算幂乘方:

等号('=')用于给变量赋值。赋值之后,在下一个提示符之前不会有任何结果显示:

变量在使用前必须“定义”(赋值),否则会出错:

浮点数有完整的支持。在整数和浮点数的混合运算中,整数会被转换为浮点数,如:

     >>>  3*3.78/1.5
     7.56
     >>>  7.0/2
     3.5

交互模式中,将最近一个表达式的值赋给变量_。这样我们就可以把它当作一个桌面计算器,用于连续计算,例如:

     >>>  t=13.5/100
     >>>  price=98.5
     >>>  price*t
     13.297500000000001
     >>>  price+_
     111.7975
     >>>  round(_,2)
     111.8

此变量对于用户是只读的。不要尝试给它赋值,它只会创建一个独立的同名局部变量,并屏蔽系统内置变量的效果。除了int和float,Python还支持其他数字类型,例如decimal和fraction。Python还支持复数,使用后缀j或J表示虚数部分(例如,3+5j)。

1.3.2 变量

下面来尝试在hello_world.py中执行以下语句:

运行程序,输出如下:

     Hello Python!!

此处添加了一个名为message的变量。每个变量都存储了一个值——与变量相关联的信息。在此,存储的值为文本“Hello Python!!”。

下面进一步扩展这个程序:修改hello_world.py,使其再打印一条消息。为此,在hello_world.py中添加一个空行,再添加下面两行代码:

运行程序,输出如下:

     Hello World!!
     Hello Python Crash Course World!!

在程序中我们可随时修改变量的值,而Python将始终记录变量的最新值。

1.变量的命名和使用

在Python中使用变量时,需要遵守一些规则和指南。违反这些规则将引发错误,而指南旨在使编写的代码更容易阅读和理解。变量有关的规则有:

· 变量名只能包含字母、数字和下画线。变量名可以字母或下画线开头,但不能以数字开头,例如,可将变量命名为message_1,但不能将其命名为1_message。

· 变量名不能包含空格,但可使用下画线来分隔其中的单词。例如,变量名gr_message可行,但变量名gr message会引发错误。

· 不要将Python关键字和函数名作为变量名,即不要使用Python保留用于特殊用途的单词作为变量名,如print。

· 变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好。

· 慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0。

要创建良好的变量名,需要经过一定的实践,在程序复杂而有趣时尤其如此。随着编写的程序越来越多,并开始阅读别人编写的代码,我们将越来越善于创建有意义的变量名。

技巧:就目前而言,应使用小写的Python变量名。在变量名中使用大写字母虽然不会导致错误,但小写字母更易于他人阅读,避免使用大写字母是个不错的主意。

2.变量赋值

1)单个变量赋值

Python中的变量赋值不需要类型声明。每个变量在内存中创建,都包括变量的标识、名称和数据这些信息。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。等号(=)用来给变量赋值。等号运算符左边是一个变量名,等号运算符右边是存储在变量中的值。例如:

以上实例中,100,1000.0和"John"分别赋值给counter,miles,name变量。运行程序,输出如下:

     100
     1000.0
     John

2)多个变量赋值

Python允许同时为多个变量赋值。例如:

     a=b=c=1

以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。也可以为多个对象指定多个变量。例如:

     a,b,c=1,2,"j ohn"

以上实例,两个整型对象1和2分配给变量a和b,字符串对象"john"分配给变量c。

3.使用变量时避免命名错误

程序员一般都会犯错,而且大多数程序员每天都会犯错。虽然优秀的程序员也会犯错,但他们知道如何高效地消除错误。下面来看一种大家可能经常会犯的错误,并学习如何消除它。

我们将有意编写一些引发错误的代码。输入以下代码,包括拼写不正确的单词message:

     message="Hello Python Crash Courser eader!"
     print(mesage)

程序存在错误时,Python解释器将竭尽所能地帮助找出问题所在。程序无法成功地运行时,解释器会提供一个Traceback。Traceback是一条记录,指出了解释器尝试运行代码时,在什么地方陷入了困境。下面是不小心拼写了变量名时,Python解释器提供的Traceback:

解释器提出,文件hello_world.py的第2行存在错误;它列出了这行代码,旨在帮助我们快速找出错误;它还提出了这是什么样的错误。在此,解释器发现了一个名称错误,并指出打印的变量message未定义:Python无法识别提供的变量名。名称错误通常意味着两种情况:要么是使用变量前忘记给它赋值了,要么是输入变量名里拼写不正确。

在这个实例中,第2行的变量名message中遗漏了字母s。Python解释器不会对代码做拼写检查,但要求变量名的拼写一致。如果在代码的另一个地方也将message错误地拼写成mesage,结果将如何呢?

     mesage="Hello Python Crash Courser eader!"
     print(mesage)

在这种情况下,程序将成功地运行:

     Hello Pyt hon Crash Cour sereader!

计算机一丝不苟,但不关心拼写是否正确。因此,创建变量名和编写代码时,我们无须考虑英语中的拼写和语法规则。

1.3.3 运算符

运算符是可以操纵操作数的结构。如一个表达式:10+20=30。这里,10和20称为操作数,+则被称为运算符。

Python语言支持以下类型的运算符:

· 算术运算符

· 比较(关系)运算符

· 赋值运算符

· 位运算符

· 逻辑运算符

· 成员运算符

· 身份运算符

下面来看看Python的所有运算符。

1.算术运算符

假设变量 a 的值是10,变量 b 的值是21,则表1-1列出了算术运算符规则。

表1-1 算术运算符规则

【例1-1】 Python的算术运算。

     a=21
     b=10
     c=0
     c=a+  b
     print("1-c的值为:",c)
     c=a-b
     print("2-c的值为:",c)
     c=a*b
     print("3-c的值为:",c)
     c=a/b
     print("4- c的值为:",c)
     c=a%  b
     print("5-c的值为:",c)
     #修改变量a、b、c
     a=2
     b=3
     c=a**b
     print("6-c的值为:",c)
     a=10
     b=5
     c=a//b
     print("7-c的值为:",c)

运行程序,输出如下:

     1-c的值为:31
     2-c的值为:11
     3-c的值为:210
     4-c的值为:2.1
     5-c的值为:1
     6-c的值为:8
     7-c的值为:2

2.比较(关系)运算符

表1-2是假设变量 a 为8,变量 b 为17的比较效果。

表1-2 比较运算符规则

【例1-2】 Python的比较运算。

运行程序,输出如下:

     5-a小于或等于b
     6-b大于或等于a

3.赋值运算符

表1-3是假设变量 a 为8,变量 b 为17的赋值效果。

表1-3 赋值运算符规则

【例1-3】 Python的赋值运算操作。

     a=8
     b=17
     c=0
     c=a+  b
     print("1-c的值为:",c)
     c+=a
     print("2-c的值为:",c)
     c*= a
     print("3-c的值为:",c)
     c/=a
     print("4-c的值为:",c)
     c=2
     c%=a
     print("5-c的值为:",c)
     c**=a
     print("6-c的值为:",c)
     c//=a
     print("7-c的值为:",c)

运行程序,输出如下:

     输出结果为:
     1-c的值为:25
     2-c的值为:33
     3-c的值为:264
     4-c的值为:33.0
     5-c的值为:2
     6-c的值为:256
     7-c的值为:32

4.位运算符

位运算符是把数字看作二进制数来进行计算的。Python中的位运算法则如下:

表1-4中变量 a 为60, b 为13的二进制格式如下:

     a=0011 1100
     b=0000 1101
     -----------------
     a&b=0000 1100
     a|b=0011 1101
     a^b=0011 0001
     ~a = 1100 0011

表1-4 位运算符规则

【例1-4】 Python的位运算。

运行程序,输出如下:

     1-c的值为:12
     2-c的值为:61
     3-c的值为:49
     4-c的值为:-61
     5-c的值为:240
     6-c的值为:15

5.逻辑运算符

Python语言支持逻辑运算符,表1-5为假设变量 a 为8, b 为16进行运算的结果。

表1-5 逻辑运算符规则

【例1-5】 Python的逻辑运算实例。

运行程序,输出如下:

     1-c的值为:12
     2-c的值为:61
     3-c的值为:49
     4-c的值为:-61
     5-c的值为:240
     6-c的值为:15

6.成员运算符

除了以上运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串、列表或元组,如表1-6所列。

表1-6 成员运算符规则

【例1-6】 Python的成员运算实例。

运行程序,输出如下:

     1-变量a不在给定的列表list中
     2-变量b不在给定的列表list中
     3-变量a在给定的列表list中

7.身份运算符

身份运算符用于比较两个对象的存储单元,如表1-7所列。

表1-7 身份运算符规则

【例1-7】 身份运算实例。

运行程序,输出如下:

     1-a和b有相同的标识
     2-a和b有相同的标识
     3-a和b没有相同的标识
     4-a和b没有相同的标识

提示 :is与==的区别主要表现在,is用于判断两个变量引用对象是否为同一个,==用于判断引用变量的值是否相等。 DLB8rE4AtAaJYMnweZYv5LlDi70bVG5M/cVUyZ87xNPISgYuCKsfVzthf95Oh7bm

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开