1.数字类型
(1) 整数类型
整数类型与数学中的整数的概念一致,有以下四种进制形式:
进制种类 | 引导符号 |
十进制 | 无 |
二进制 | 0b或0B |
八进制 | 0o或0O |
十六进制 | 0x或0X |
(2) 浮点数类型
浮点数类型与数学中实数的概念一致,表示带有小数的数值。python中的浮点数类型必须带有小数部分
浮点数类型有两种表示形式:十进制形式和科学计数法(如314e-2)表示。
除十进制外,浮点数没有其他进制表示形式。
不确定尾数问题:
>>>0.1 + 0.2
>0.300000000000000004
>>>0.1 + 0.2 == 0.3
>False
因为在计算机内部,使用二进制表示浮点数,进行如 0.1+0.2 等浮点数运算时是使用最接近0.1和0.2的两个数进行加运算,因此产生的数字接近0.3,但会有一个不确定的尾数。这个不确定尾数具体数值由计算机内部根据二进制运算确定产生。
不确定尾数问题在其他编程语言中也会出现,这是程序设计语言的共性问题
(3) 复数类型
复数类型表示数学中的复数。Python语言中,复数可以看作是二元有序实数对(a,b),表示a+bj,其中a是实部,b是虚部。
对于复数z,可以用z.real 和 z.imag 分别获得它的实部和虚部。
>>>(1.23e4+5.67e4j).real
>12300.0
>>>(1.23e4+5.67e4j).imag
>56700.0
2.数字类型的运算
(1)数值运算操作符
数值运算可能改变结果的数据类型,类型的改变与运算符有关,生成结果为“最宽”类型
注:整数之间进行除法运算,得到的结果是浮点数
(2) 数值运算函数
3. 字符串类型
(1) 索引
对字符串中某个字符的检索称为索引。使用方式如下:
<字符串或字符串变量>[序号]
s = "人生苦短,我用python"
>>>s[5]
>'我'
(2) 切片
对字符串中某个子串或区间的检索称为切片。使用方式如下:
<字符串或字符串变量>[N:M]
切片获取字符串从N到M(不包含M)的子字符串,其中N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号。切片要求N和M都在字符串的索引区间,若N>=M,则返回空字符串;若N缺失,则默认将N设为0;若M缺失,则默认表示到字符串的结尾。
s = "人生苦短,我用python"
>>>s[:5]
>'人生苦短,'
高级切片:
根据步长来对字符串切片。使用方式:
<字符串或字符串变量>[N:M:K]
K表示步长,每隔K-1个字符从字符串中提取字符
s = "人生苦短,我用python"
>>>s[::2]
>'人苦,用yhn'
可用于字符串倒序输出
s = "迢迢绿树江天晓,蔼蔼红霞晚日晴"
>>>s[::-1]
>"晴日晚霞红霭霭,晓天江树绿迢迢"
(3) 字符串操作符
(4) 字符串处理函数
(5) 字符串处理方法
(6) 字符串的格式化
字符串的格式化控制采用 .format() 方法。使用方式如下:
<模板字符串>.format(<逗号分隔的参数>)
其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用花括号 {} 表示,对应format()方法中逗号分隔的参数。
>>>"{1}曰:温故而知新,可以{0}。".format("为师矣”,“孔子")
>孔子曰:温故而知新,可以为师矣。
注意:槽的数量必须和.format()方法中出现的变量的数量一致,否则会报错。
format()方法的槽除了包含参数序号,还可以包括格式控制信息,格式如下:
{<参数序号>:<格式控制标记>}.format(s)
格式控制标志:
s="等级考试"
y="-"
>>>{0:{1}^24}.format(s,y)
>----------等级考试----------