数字和表达式
交互式Python解释器可以当作计算器使用,如:
常见的运算符如:*(乘),/(除),//(取商),%(取余),**(幂)均可使用。变量
变量是比较好理解的概念,基本上是代表(或者引用)某值的名字。如:
注意:在使用变量之前,需要对其赋值,否则会报错,毕竟使用没有值的变量没有意义。- 语句
先看一个例子:
最后的两行代码不一样,但输出是一样的。他们有什么区别吗?一个是表达式,一个是语句。简单来说,表达式就是某事,语句就是做某事。之所以输出结果一样是因为解释器总是把表达式的值给打印出来。一般情况下,Python并不会这样。
上面提到的赋值操作也是一条语句,它改变了变量。而本例中的print语句改变了屏幕显示的内容。
注意:Python 3.x版本中print函数需要加() 。 获取用户输入
input()函数用来获取用户的输入。
注意:Python 3.x版本中input函数返回都是字符串类型,所以要改变类型需要强制类型转换。如:int(input(‘the number is:’))。函数
除了可以用幂运算符(**)来计算乘方外,可以用函数来代替运算符,这个函数就是pow:
函数就像实现特定功能的小程序。Python本身提供了许多标准函数,我们称之为内建函数。当然我们也可以自定义函数。模块
模块可以看作是Python功能的扩展,这里需要用到import命令来导入模块:
import导入模块,然后按照“模块.函数“的格式使用这个模块的函数。如果确定不会导入多个同名函数的情况下,可以使用另一种形式:from * import *
说明:上面这种方式不推荐使用,尤其是在代码量越来越多的情况下,容易引起混乱,也不好调试和管理。不过还有一种方式,既不用输入模块名,也不会引起混乱:import * as *
这里扩展一下,说一个问题,就是如果求-1的平方根,sqrt()函数会报错。
这里介绍另一个模块cmath(即complex math,复数)
- 保存并执行程序
交互式解释器里面输入的一切都会在退出时丢失,所以一个文本编辑器时非常有必要的。Python有自带的文本编辑器IDLE,也可以使用其他编辑器。
保存后在终端输入命令:python filename.py 运行程序
另外,在Python中注释使用符号(#)。 字符串
8.1首先给出一个例子:
单引号和双引号得出的结果是一样的,那么他们有区别吗?答案是没有的。他们都是字符串类型。在某些情况下,他们是非常有用的。
上面的例子中语句内部使用了单引号或双引号,通过交叉使用,就不会出错。当然也可以使用转义字符’\ ’
8.2 接下来介绍一下拼接字符串。
拼接字符串就像进行加法运算一样,非常方便。这介绍一种非常酷炫的拼接方式,算是一种特殊方法。
字符串一个接一个写的方式可以实现拼接,也仅限于这种方式。
8.3 字符串表示,str和repr
通过前面的例子可以看到,Python打印的字符串依然被引号括起来,这是因为Python打印值的时候会保持该值在Python代码中的状态,而不是希望用户看到的状态。如果用print就不一样了。
可是有些时候我们会对是整型还是长整型感兴趣。这里引入两个函数。一个是str函数,它会把值转换成合理形式的字符串,以便用户理解。而repr会创建一个字符串,它以合法的Python表达式形式表示值。例如:
实际上repr(x)和x
的功能是一样的,(注意,`是反引号,不是单引号)。如下面的代码:
注意:在Python3.0中,已经不在使用反引号了,所以,即使是在旧版版本中,也推荐使用repr。
8.4 input和raw_input的比较
首先看一下Python2的情况:
接下来是Python3的情况:
旧版中,input会假设用户输入的是合法的Python表达式,如果输入的是字符串,加上引好就没有问题。可是这样的交互方式不友好。这就需要raw_input函数。它把所有的输入当作原始数据,然后将其放入字符串中。
新版中,整合了这两个函数,没有了 raw_input。
8.5 长字符串、原始字符串和Unicode
如果需要写一个非常长的字符串,跨多行,那么可以使用三个引号代替普通引号。
这时候,内部可以使用单引号和双引号,不需要进行转义。如果每行末尾是转义字符,也可以实现多行字符串。
下面介绍原始字符串。普通字符串中,反斜线有特殊的作用,就是转义。但有时候,这并非是想要的结果。例如像路径这样的字符串。当然可以使用转义,但是在路径较长的情况下,就比较麻烦。这里引入原始字符串。它不把反斜线当成特殊字符,该字符串中输入的每个字符都会与书写的方式保持一致:
注意: 不能在原始字符串的末尾加反斜线,除非对反斜线进行转义。
Unicode字符串。Python中的普通字符串在内部是以8为ASCII码形式存储的,而Unicode字符串则存储为16位Unicode字符,这样就能表示更多的字符集了。
注意: 在Python 3.0 中,所有字符串都是Unicode字符串。附加:本节的函数
abs(number) 返回数字的绝对值
cmath.sqrt(number) 返回平方根,也可以应用于复数
float(float) 将字符串和数字转换为浮点数
help() 提供交互式帮助
input(prompt) 获取用户输入
int(object) 将字符串和数字转换为整数
long(object) 将字符串和数字转换为长整型数
math.ceil(number) 返回数的上入整数,返回值的类型为浮点数
math.floor(number) 返回数的下舍整数,返回值的类型为浮点数
math.sqrt(number) 返回平方根,不能用于复数
pow(x,y[,z]) 返回x的y次幂(所得结果对 z取模)
raw_input(prompt) 获取用户输入,返回的类型为字符串
repr(object) 返回值的字符串表示形式
str(object) 将值转换为字符串
round(number[,ndigits]) 根据给定的精度对数字进行四舍五入
to be continue……