Python 3中有两个简单的数据类型,即数字类型和字符串类型。
Python 3支持int、float、bool、complex(复数)4种数字类型。
在Python 2中是没有bool(布尔型)的,用数字0表示False,用1表示True。在Python 3中,把True和False定义成了关键字,但它们的值还是1和0,可以和数字相加。
下面是整数的示例:
a=123456 print(a)
输出结果如下所示。
123456
可以使用十六进制数值来表示整数,十六进制整数的表示法是在数字之前加上0x,如0x80120000、0x100010100L。
例如:
a=0x4EEFFFFF print(a)
输出结果如下所示。
1324351487
浮点数的表示法可以使用小数点,也可以使用指数的类型。指数符号可以使用字母e或E来表示,指数可以使用+/-符号,也可以在指数数值前加上数值0,还可以在整数前加上数值0。
例如:
3.14 10. .001 1e100 3.14E-10 1e010 08.1
使用float()内置函数可以将整数数据类型转换为浮点数数据类型。例如:
f=float(150) print(f)
输出结果如下所示。
150.0
Python的布尔值包括True和False,只与整数中的1和0有对应关系。例如:
print(True==1) print(True==2) print(False==0) print(False==-1)
输出结果如下所示。
True False True False
这里利用符号(==)判断左右两边是否绝对相等。
复数的表示法是使用双精度浮点数来表示实数与虚数的部分,复数的符号可以使用字母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
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>'
有时候,用户需要对数据内置的类型进行转换。数据类型的转换,只需要将数据类型作为函数名即可。以下几个内置的函数可以执行数据类型之间的转换,这些函数返回一个新的对象,表示转换的值。
语法格式如下:
int(x)
将x转换为一个整数。例如:
i=int(3.6) print(i)
输出结果如下所示。
3
语法格式如下:
float(x)
上面的代码是将x转换为一个浮点数。例如:
f=float (10) print(f)
输出结果如下所示。
10.0
语法格式如下:
str(x)
下面的代码是将x转换为一个字符串。例如:
s=str(567) print(s)
输出结果如下所示。
567