Python从入门到项目实战笔记(3)基本数据类型

Python从入门到项目实战笔记(3)基本数据类型

基于计算机等级二级Python语言程序设计

数字类型

  1. 整数类型
    整数类型与数学中整数的该概念一致,整数类型有4种进制表示:十进制、二进制、八进制和十六进制。默认情况下,整数采用十进制,其他进制需要增加引导符号。
进制种类 引导符号
十进制
二进制 0b或0B
八进制 0o或0O
十六进制 0x或0X

进制只是整数值表示的展示形式,用于辅助程序员更好地开发程序,程序处理时只要数值相同就无区别。不同进制的整数之间可以直接运算或比较。程序无论采用何种进制表达数据,计算机内部都以相同格式存储数值,因此,进制之间的运算结果默认以十进制方式显示。

>>>0x3F2 +101010
102020
  1. 浮点类型
    浮点数类型与数学中实数的概念一致,表示带有小数的数值。Python语言中的浮点数类型必须带有小数部分,小数部分可以是0。例如:10.0。除了一般的小数表示方式,浮点数还可以用科学计数法表示,例如:1.01e3表示1001.0。
    python语言的浮点数还存在一个“不确定尾数”问题,即两个浮点数相加,可能会产生一些不确定的尾数

    >>>0.1+0.2
    0.30000000000000004
    

    这是因为,受限制于计算机表示浮点数使用的存储宽度,0.1的二进制数并不完全等于0.1而是计算机能表示情况下最接近0.1的二进制数,0.2也类似。因此,0.1+0.2的运算,产生的数接近0.3,但反应到十进制上就会产生一个尾数。这个尾数具体是多少。受限于计算机的二进制运算。不确定尾数问题在其他编程语言中也会出现,这是程序设计的共性问题。为了解决不确定尾数问题可以使用round()函数

    >>>round(0.1+0.2,3)
    0.3
    

    round(x,d)是一个四舍五入函数,能够对x进制四射五入操作,其中参数d指定保留的小数位数。在利用浮点数进行比较和运算时,需要结合实际情况考虑比较的精度,并使用round()函数进行位数控制再进行比较

  2. 复数类型
    再Python语言中,复数可以看作时二元有序实数对(a,b),表示a+bj,其中a是实数部分,b是虚数部分.j不能省略。复数类型中实部和虚 部都是浮点类型,对于复数z,可以用z.real和z.imag分别获得它的实数和虚数部分。

    >>>(1,2j).real
    1
    >>>(1.2j).imag
    2
    

数字类型的运算

  1. 数值运算操作符
    Python提供了9个基本的运算操作符,如下
操作符及运算 描述
x+y x与y之和
x-y x与y之差
x*y x与y之积
x/y x与y之商,产生结果位浮点数
x//y x与y之整数商
x%y x与y之商的余数
-x x的负值
+x x本身
x**y x的y次幂

整数运算可能改变结果的数据类型,类型的改变与运算符有关,有如下基本规则:

  • 整数和浮点数混合运算,输出结果是浮点数;
  • 整数之间运算,产生结果类型与操作符相关,除法运算(/)的结果是浮点数;
  • 整数或浮点数与复数运算,输出结果是负数。

所有二元运算操作符(+、-、、/、//、%、**)都可以与赋值符号(=)相连,形成增强赋值操作符(+=、-=、=、/=、**=)。用op表示这些二元运算操作符,增强赋值操作符的用法如下:
x op=y 等价于 x=x op y

  1. 数值运算函数
    函数不同于操作符,其表现为对参数的特定运算。Python解释器自身提供了一些预装函数,称为"内置函数"。这些函数中有一些与数值运算有关如下:
函数 描述
abs(x) x的绝对值
divmod(x,y) (x//y,x%y),输出为二元组形式(也称为元组类型)
pow(x,y)或pow(x,y,z) xy或(xy)%z,幂运算
round(x)或round(x,d) 对x四舍五入,保留d为小数,无参数d则返回四舍五入的整数值
max(X1,X2,X3,…) 最大值
min(X2,X3,X3,…) 最小值

字符串类型

字符串是字符的序列表示,根据字符串的内容多少分为单行字符串和多行字符串。
单行字符串可以由一对单引号(’)或双引号(")作为边界来表示,单引号和双引号作用相同。当使用单引号时,双引号可以作为字符串的一部分;使用双引号时,单引号可以作为字符串的一部分。
多行字符串可以由一对三单引号(’)或双引号(")作为边界来表示,两者作用相同。

>>>print("单行字符串")
>>>print('单行字符串')
>>>print("""
>>>多行字符串
>>>多行字符串
>>>""")

反斜杠字符(\)是一个特殊字符,在Python字符串中表示"转义",即该字符与后面相邻的一个字符共同组成了新的含义。常见的有:\n表示换行、\\表示反斜杠、\'表示单引号、\“表示双引号、\t表示制表符等。
反斜杠字符(\)还有一个作用既是续行。有的时候,需要在一行中表达的程序逻辑较多,编辑器无法有效编写,或者从美观和可读性角度,通常需要将一行代码分写在连续的不同行上,这就需要"续行符”。续行符符号不止用在字符串中,还可以用在代码的编写中。

字符串的切片
对字符串中某个子串或区间的检索称为切片。
<字符串>[N:M]
切片获取字符串从N到M(不包含M)的子字符串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号或反向递减序号。切换要求N和M都在字符串的索引区间,如果N大于等于M,则返回空字符串。如果N缺失,则默认将N设为0;如果M缺失,则默认表示到字符串结尾。

字符串类型的操作

字符串操作符

操作符 描述
x+y 连接两个字符串
xn或nx 复制n次字符串x
x in s r如果x是s的子串,返回True,否则返回False

字符串处理函数

函数 描述
len(x) 返回字符串的长度
str(x) 将其他类型转换为字符串
chr(x) 返回Unicode编码x对应的单字符
ord(x) 返回单字符x表示的Unicode编码
hex(x) 返回证书x对应十六进制的小写形式字符串
oct(x) 返回整数x对应的八进制的小写形式字符串

字符串处理方法

方法 描述
str.lower() 返回字符串str的副本,全部字符小写
str.upper() 返回字符串str的副本,全部字符大写
str.title() 返回字符串str的副本,全部单词组的首字母大写
str.split(sep=None) 返回一个列表,由str根据sep分隔的部分构成,省略sep默认以空格分隔
str.replace(old,new) 返回一个字符串str的副本,所有old子串被替换为new
str.count(sub) 返回sub子串出现的次数
str,center(width,fillchar) 字符串剧中函数,fillchar参数可选
str.strip(chars) 从字符串str中去掉在其左侧和右侧chars中列出的字符
str.join(iter) 将iter变量的每一个元素后增加一个str字符串

类型判断和类型间转换

python语言提供了type(x)函数对变量x进行类型判断,适用于任何数据类型。

函数 描述
int(x) 将x转换为整数,x可以是浮点数或字符串
float 将x转换为浮点数,x可以是整数或字符串
str(x) 将x转换为字符串,x可以是整数或浮点数

你可能感兴趣的:(python,python)