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

2.5 简单数据类型

Python 3中有两个简单的数据类型,即数字类型和字符串类型。

2.5.1 数字类型

Python 3支持int、float、bool、complex(复数)4种数字类型。

注意

在Python 2中是没有bool(布尔型)的,用数字0表示False,用1表示True。在Python 3中,把True和False定义成了关键字,但它们的值还是1和0,可以和数字相加。

1.int(整数)

下面是整数的示例:

a=123456
print(a)

输出结果如下所示。

123456

可以使用十六进制数值来表示整数,十六进制整数的表示法是在数字之前加上0x,如0x80120000、0x100010100L。

例如:

a=0x4EEFFFFF
print(a)

输出结果如下所示。

1324351487

2.float(浮点数)

浮点数的表示法可以使用小数点,也可以使用指数的类型。指数符号可以使用字母e或E来表示,指数可以使用+/-符号,也可以在指数数值前加上数值0,还可以在整数前加上数值0。

例如:

3.14     10.      .001      1e100      3.14E-10       1e010     08.1

使用float()内置函数可以将整数数据类型转换为浮点数数据类型。例如:

f=float(150)
print(f)

输出结果如下所示。

150.0

3.bool(布尔值)

Python的布尔值包括True和False,只与整数中的1和0有对应关系。例如:

print(True==1)
print(True==2)
print(False==0)
print(False==-1)

输出结果如下所示。

True
False
True
False

这里利用符号(==)判断左右两边是否绝对相等。

4.complex(复数)

复数的表示法是使用双精度浮点数来表示实数与虚数的部分,复数的符号可以使用字母j或J。

例如:

1.5 + 0.5j       1J        2 + 1e100j         3.14e-10j

可以使用real与imag属性分别取出复数的实数和虚数部分。例如:

a=2.6+0.8j
print(a.real)
print(a.imag)
print(a)

输出结果如下所示。

2.6
0.8
(2.6+0.8j)

可以使用complex(real,imag)函数将real与imag两个数值转换为复数。real参数是复数的实数部分,imag参数是复数的虚数部分。例如:

x=complex(2.6,0.8)
print(x)

输出结果如下所示。

(2.6+0.8j)

数值之间可以通过运算符进行运算操作。例如:

a=50 + 40   # 加法
b=5.6 - 2   # 减法
c=30 * 15   # 乘法
d=1/2        # 除法,得到一个浮点数
e=1//2       # 除法,得到一个整数
f=15 % 2     # 取余
g=2 ** 10    # 乘方
print(a,b,c,d,e,f,g)

输出结果如下所示。

90 3.5999999999999996 450 0.5 0 1 1024

在数字运算时,需要注意以下问题:

(1)数值的除法(/)总是返回一个浮点数,要获取整数使用(//)操作符。

(2)在整数和浮点数混合计算时,Python会把整型转换为浮点数。

用户可以将数值使用在函数内。例如:

r=round(12.32, 1)
print(r)

输出结果如下所示。

12.3

可以对数值进行比较。例如:

x=2
y=0 < x < 5
print(y)

输出结果如下所示。

Ture

但不可以对复数进行比较。例如:

z=0.5 + 1.5j < 2j
print(z)

输出错误信息如下所示。

Traceback (most recent call last):
  File "C:/Users/Administrator/PycharmProjects/untitled/1.2.py", line 1, in <module>
    z=0.5 + 1.5j < 2j
TypeError: '<' not supported between instances of 'complex' and 'complex'

可以将数值做位移动(shifting)或屏蔽(masking)。例如:

a=16 << 2
b=30 & 0x1B
c=2 | 5
d=3 ^ 5
e=~2
print(a,b,c,d,e)

输出结果如下所示。

64 26 7 6 -3

2.5.2 字符串类型

Python将字符串视为一连串的字符组合。例如,字符串“Parrot”在Python内部被视为"P" "a" "r" "r" "o" "t"6个字符的组合。因为第1个字符的索引值永远是0,所以存取字符串“Parrot”的第1个字符" P"时使用"Parrot"[0]。例如:

p1="Parrot"[0]
p2="Parrot"[1]
print(p1,p2)

输出结果如下所示。

P a

要创建一个字符串时,可以将数个字符以英文单引号、双引号或三引号包含起来。例如:

a="Parrot"
b='Parrot'
c='''Parrot'''
print(a,b,c)

输出结果如下所示。

    Parrot Parrot Parrot
注意

字符串开头与结尾的引号要一致。

下面的示例将字符串开头使用双引号、结尾使用单引号。

a="Parrot'

输出错误信息如下:

Traceback (  File "<interactive input>", line 1
    a="Parrot'
               ^
SyntaxError: invalid token

由此可见,当字符串开头与结尾的引号不一致时,Python会显示一个invalid token的信息。

注意

当字符串长度超过一行时,必须使用三引号将字符串包含起来,因为单引号与双引号不可以跨行。例如:

a="""Content-type: text/html
 <h1>Hello Python</h1>
 <a href="http://www.python.org">Go to Python</a>"""
print(a)

输出结果如下所示。

'Content-type: text/html\n<h1>Hello Python</h1>\n<a href="http://www. python.org">Go to Python</a>'

2.5.3 数据类型的相互转换

有时候,用户需要对数据内置的类型进行转换。数据类型的转换,只需要将数据类型作为函数名即可。以下几个内置的函数可以执行数据类型之间的转换,这些函数返回一个新的对象,表示转换的值。

1.转换为整数类型

语法格式如下:

int(x)

将x转换为一个整数。例如:

i=int(3.6)
print(i)

输出结果如下所示。

3

2.转换为小数类型

语法格式如下:

float(x)

上面的代码是将x转换为一个浮点数。例如:

f=float (10)
print(f)

输出结果如下所示。

10.0

3.转换为字符串类型

语法格式如下:

str(x)

下面的代码是将x转换为一个字符串。例如:

s=str(567)
print(s)

输出结果如下所示。 cDUjfJkMeeiw/OiB6yFKigB3C2SJE+HW5T5ScW4/M8mp/T3POhb4eIRcQzvoI9nh

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