数据类型总结

一、数值型

1.1 int(整型)

整型可以通过4种进制来表示:十进制、二进制、八进制、十六进制。

十进制整型常量:数码为0~9。

如10,-10,-2023139001

二进制整型常量:前缀为0b或0B,数码为0和1。

如:0B1010(表示十进制数10),0b1010(表示十进制数10);

八进制整型常量:前缀为0o或0O,数码为0~7,通常是无符号数。

如:0O12(表示十进制数10),0o12(表示十进制数10)

十六进制整型常量:前缀为0x或0X,数码为0~9以及A~F或a~f(代表10~15)。

如:0Xa(表示十进制数10),0xa(表示十进制数10)

注:引导符号中字母采用大小写字母均可,且第1个字符是数字0,第二个字符才是字母。在Python程序中,进制之间的运算结果默认以十进制方式展示。

整型常量的运算示例如下:

>>> print(10-1)

9

>>> print(0o12+10)

20

>>>print(0b1010+1)

11

Python支持在数字之间使用下划线( _ )来分隔,以提高数字的可读性,类似于数学中使用千位分隔符,使用下划线时,需要注意几点要求:

(1)下划线可以出现在数字中间的任意位置
(2)下划线不能连续使用即1_ _0(错误示例)
(3)下划线不能出现在数字的开头或结尾即_10(错误示例)或10_(错误示例)
正确使用下划线的示例如下:

>>>print(1_0)

10

>>>print(10_00000)

1000000

>>>print((1_6+1_0j))

16+10j

1.2 float(浮点型)

浮点型是一种表达实数的方式,浮点数是浮点型实数。
浮点型常量就是包含小数的常量,可直接写成带小数点的小数形式(如158.20、-2.9),也可使用指数形式(具体形式为小数+E+阶码,e也可)表示(如-0.23E18、2.3e-6),而 e-19(阶码标志e之前无数字)、2.1E(无阶码)等都不是正确的浮点型常量。

浮点数运算的示例如下:

>> 0.3+1.21                                             #1.51

>>>0.4-0.1                                               #0.30000000000000004

>>> 0.4 -0.1 ==0.3                                   # False

>>> abs(0.4-0.1-0.3) < 1e-6                     # True

1.3complex(复数型)


复数包含实数与虚数。复数可表示成实部+虚部 形式,如-5.8+6j、4.5+3e-7j。用complex
(a[,b])可创建复数a+bj。

使用“复数.real”和“复数.imag”可从复数中提取它的实部和虚部。

Python内置函数abs(复数)可用来计算复数的模,使用复数.conjugate()可得到共轮
复数。Python还支持复数之间的加、减、乘、除等运算。

复数间的运算示例如下:

>>>x=3+4j

>>> x.real                                      #3.0

>>>x.imag                                     #4.0

>>>abs(x)                                   #5.0

>>>X.conjugate()                          #(3-4j)

>>>y= -5+6.2j

>>>x+y                                         #(-2+10.2j)

>> >x - y                                       #(8-2.2j)

>>> x * y                                      # (-39.8-1.399999999999986j)

>>>x / y                                       #(.15447667087011352-0.6084489281210592j)

1.4 数值运算符

 算术运算符 

加  + 两个数相加

减 - 取负数或用一个数减去另一个数 

乘 *  两个数相乘或返回一个被重复若干次的字符串

除 两个数相除 模 两个数整除后的余数

幂 * * 计算一个数的幂

模 % 两个数整除后的余数

整除 //两个数相除

二.布尔型

布尔型数据可用于很多语句中如:条件语句、循环语句,根据其判断结果决定程序流程和分支的走向,也可以用于在逻辑运算中表示逻辑结果。布尔型数据是布尔值,它有自己的运算符。使用比较运算符和判断运算符进行运算产生的结果就是布尔值。

2.1布尔型及其运算


布尔运算包括非(not)、与(and)和或(or),优先级从高到低。布尔运算的规则如下。

(1)非运算(not x):如果x为False,则结果为True,否则为False。

(2)与运算(x and y):如果x为False,则不用考虑y,结果为False;如果x为True,则结果取决于y为True还是False。

(3)或运算(x or y):如果x为False,则结果取决于y为True还是False:如果x为
True,则结果为True,不用考虑y。

比较运算
Python中比较运算符用于比较运算,它们有相同的优先级,并且比布尔运算符的优先级高。
比较运算符如下。
<:小于

<=:小于等于

>:大于

>=: 大于等于

==:等于

!=:不等于

is: 是对象

is not: 不是对象

比较运算符的使用示例如下:

>>>1<3<5                                                    #等价于1<3 and 3<5

True

>>>1 > 6 < math.sqrt(9)                                  #惰性求值或者逻辑短路

False

>>'Hello' > 'world'                                        #比较字符串的大小

False

比较+布尔运算
使用运算符and和or执行运算后并不一定会返回True 或False,可能会得到最后一个被
计算的表达式的值,但是使用运算符not执行运算后一定会返回True或False。例如:

>>> e1=5

>>> e2=20

>>> be = bool(e1)

>>> be                                                                  # True

>>> e1 > e2 and e2 > el                                       # False

>>> e1 > e2 and e2                                              # False

>>> e2 > e1 and e1                                              #5

>>> e1 > e2 or e2 > e1                                         #True

>>> e2 > el  or el                                                   #True

>>> e1 > e2 or e2                                                 #20

>>> not e1>e2                                                      #True

>>> not el                                                             #False

>>> not 0                                                              #True

>>> True+1                                                          #2,系统把True当作1

>>> False * 2                                                       #0,系统把False当作0

2.2判断运算符

判斯运算符分为成员判断运算符和同值判断运算符

成员判断运算符:in
in判断元素是否在对象中,如果元素在对象中,则返回True:否则返回False。
in运算符的使用示例如下:
>>> 2 in range(1, 10)

True

>>> 55 in range(1, 100)

True

>> 'abc' in 'abBcdef

False

同值判断运算符:is
is 判断两个对象是否为同一个对象,如果是同一个对象,则返回True;否则返回False

is运算符的使用示例如下:

>>x = 10; y = 10

>>> x is y

True

>>> r =  range(1,1o)

>>>  r[0]  is  r[1]

False

>>> r1 = r                                       #r1并没有复制r,而仅仅与r指向存放数据的同一个位置

>>> r is  r1

True

>>>r2 = range(1,10)

>>> r1 is r2

False

三、字符类型

3.1转义字符


Python中常用的转义字符

\newline    忽略换行
\\    反斜线(\)
\'    单引号(')
\"    双引号(")
\a    ASCII Bell
\b     退格
\f      换页符
\n    换行
\r    回车符
\t    水平制表符
\v    垂直制表符
\000    八进制值为000的字符
\xhh    十六进制值为hh的字符
\N{name}    Unicode数据库中以name命名的字符
 

3.2内置字符串函数

内置字符串处理函数
len(s)    返回字符串s的长度,或者返回其他组合数据类型的元素个数
str (x)    返回任意类型x所对应的字符串形式
chr (n)    返回Unicode编码值n对应的单字符
ord (c)    返回单字符c表示的Unicode编码值
hen (n)    返回整数n对应的十六进制数的小写形式字符串
oct (n)    返回整数n对应的八进制数的小写形式字符串

3.3字符串运算符

字符串基本运算符如下

(1) +: 字符串连接

(2) *:字符串重复

(3) in/not in::in 判断一个字符串是否为另一个的子字符串(成员): not in则相反。

上述运算符使用示例如下:

>>>a =  "string"; b =  "test!"

>>>a+b                                   # 'String test!'

>>> a*2                                   # 'StringString'

>>> 'test' in b                          # True

>>> a not in b                         # True

>>> int('1'*10, 2)                     # 1023

>>> "Abc"> "abc"                    # False
 

3.4字符串操作方法

获取子字符串的示例如下:

>>> str1 = 'first python!'

>>> str2 = "第二 python!"

>>> print(str1[0],str2[1:4])                                           # f 二 p

说明:

s[:] 截取字符串的全部字符

s[0]:截取s字符串中第1个字符

s[-1]: 截取s字符串中倒数第1个字符

s[1:4]:截取s字符串中第2~4个字符

s[6:]:截取s字符串中第7个字符到结尾

s[:-3]:截取s字符串从头开始到倒数第3个字符之前

s[::-1]:获取与s字符串顺序相反的字符串

s[-3:-1]:截取s字符串倒数第3位与倒数第1位之前的字符 

s[-3:]:截取s字符串倒数第3位到结尾
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值