您现在的位置是:网站首页> 编程资料编程资料

Python中的基本数据类型讲解_python_

2023-05-26 286人已围观

简介 Python中的基本数据类型讲解_python_

一、数据类型分类

1、按存值个数区分

  • 单个值:数字,字符串
  • 多个值(容器):列表,元组,字典,集合

2、按可变不可变区分

  • 可变:列表[],字典{},集合{}
  • 不可变:数字,字符串,元组()、bool,None

3、有序无序区分

  • 有序(可按索引取值):字符串,列表,元组
  • 无序:字典,集合

二、整型(int)

age = 18 # age=int(18) print(id(age))#4530100848 print(type(age))# print(age)#18

1、四种进制表示形式

  • 十进制:1010, 99, -217
  • 二进制,以0b或0B开头:0b010, -0B101
  • 八进制,以0o或0O开头:0o123, -0O456
  • 十六进制,以0x或0X开头:0x9a, –0X89

我们可以使用二进制、十六进制和八进制来代表整数

number = 0b101011 # 二进制 print(number) # 43 number = 0xA0F # 十六进制 print(number) # 2575 number = 0o37 # 八进制 print(number) # 31

2、int()方法

可将纯数字的字符串转为十进制的整型

int(x):将x变成整数,舍弃小数部分。

print(int("123")) # 123 x = int('111') print(type(x)) #  # print( int('11.1') ) # 报错 print(int(123.45)) # 123

3、type和isinstance

内置的type()函数可以用来查询变量所指的对象类型。

a, b, c, d = 20, 5.5, True, 4 + 3j print(type(a), type(b), type(c), type(d)) # 

此外还可以用isinstance来判断:

a = 111 isinstance(a, int) # True

type和isinstance的区别在于:

  • type()不会认为子类是一种父类类型。
  • isinstance()会认为子类是一种父类类型。
class A: pass class B(A): pass isinstance(A(), A) # True type(A()) == A # True isinstance(B(), A) # True type(B()) == A # False

4、对象的创建和删除

当你指定一个值时,Number对象就会被创建:

var = 2 var_a = var_b = 10

您可以通过使用del语句删除单个或多个对象。

del语句的语法是:

del var1[, var2[, var3[...., varN]]]

例如:

del var del var_a, var_b print(var) # name 'var' is not defined

4、在交互模式中,最后被输出的表达式结果被赋值给变量 _

例如:

>>> tax = 12.5 / 100 
>>> price = 100.50 
>>> price * tax 
12.5625 
>>> price + _ 
113.0625 
>>> round(_, 2) 
113.06

此处, _ 变量应被用户视为只读变量。 

5、注意:

  • Python可以同时为多个变量赋值,如a, b = 1, 2。
  • 一个变量可以通过赋值指向不同类型的对象。
  • 数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。
  • Python 可以使用 ** 操作来进行幂运算:5 ** 2 表示 5 的平方
  • 在混合计算时,Python会把整型转换成为浮点数。

注意第3点:// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。

print(7 // 2) # 3 print(7.0 // 2) # 3.0 print(7 // 2.0) # 3.0

三、浮点型(float)

salary = 2.1 # salary=float(2.1) print(id(salary))#4569240656  print(type(salary))# print(salary)# 2.1

1、float()方法

将纯数字的字符串转为浮点型数字。

float(x):将x变成浮点数,增加小数部分。

print(float("1.23")) # 1.23 x = float('111') print(x) # 111.0 print(type(x)) #  x = float('11.1') print(x) # 11.1 print(type(x)) #  print(float(12)) # 12.0;

2、round()函数 

1.浮点数间运算存在不确定尾数,一般发生在10的16次幂左右 
2.round(x, d)函数:对x四舍五入,d是小数截取位数 
3.浮点数间运算及比较,用round()函数辅助 

0.1 + 0.2 == 0.3 # False

round(0.1+0.2, 1) == 0.3 # True

3、科学计数法

4、数字运算函数

abs(x):绝对值。x的绝对值。

divmod(x,y):商余。(x//y, x%y),同时输出商和余数。

pow(x, y[, z]):幂余。(x**y)%z,[..]表示参数z可省略。

round(x[, d]):四舍五入。d是保留小数位数,默认值为0。 

max(x1,x2,⋯,xn):最大值。返回x1,x2,⋯,xnx1,x2,⋯,xn中的最大值,n不限。

min(x1,x2,⋯,xn):最小值。返回x1,x2,⋯,xnx1,x2,⋯,xn中的最小值,n不限。 

以下为数学函数,需要导入math模块

exp(x):返回e的x次幂(ex)

fabs(x):返回数字的绝对值

ceil(x):返回数字的上入整数

floor(x): 返回数字的下舍整数

log(x):返回以e为基数的对象

log10(x): 返回以10为基数的x的对数

modf(x):返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。

sqrt(x):返回数字x的平方根。

四、复数型(complex)

a+bj 被称为复数,其中,a是实部,b是虚部

1、complex(x):将x变成复数

五、布尔型(Bool)

True、False通常情况不会直接引用,需要使用逻辑运算得到结果。

注意:Python中所有数据类型的值自带布尔值。

如此多的数据类型中只需要记住只有0、None、空、False的布尔值为False,其余的为True。

六、字符串(str)

字符串就是一串被串起来的字符,在单引号、双引号或三引号内包裹的一串字符。同时使用反斜杠 \ 转义特殊字符。

需要注意的是:三引号内的字符可以换行,而单双引号内的字符不可以。

egon"""

1、特殊字符串:

转义符:

Python 使用反斜杠(\)转义特殊字符。


转义符形成一些组合,表达一些不可打印的含义: 
\(在行尾时) :续行符 
\\ :反斜杠符号 
\' :单引号 
\" :双引号 
\a :响铃 
\b :退格(Backspace) 
\000 :空 
\n :换行 
\v :纵向制表符 
\t :横向制表符 
\r :回车(光标移动到本行首) 
\f :换页 
\oyy :八进制数,yy 代表的字符,例如:\o12 代表换行,其中 o 是字母,不是数字 0。 
\xyy :十六进制数,yy代表的字符,例如:\x0a代表换行 
\other :其它的字符以普通格式输出

注意:

2、字符串连接:x+y

连接两个字符串x和y。如果字符串内有引号,则包裹字符串的引号和字符串内部的引号不能相同。

3、字符串重复:x * n

只能乘以数字。

4、字符串比较大小:x>y

按照ASCII码比较.字符串的比较是字母的顺序。

5、可以使用str()、hex()、chr()、ord()方法转为特殊字符串。

str(x):任意类型x所对应的字符串形式

hex(x) 或 oct(x):整数x的十六进制或八进制小写形式字符串:

chr(u):x为Unicode编码,返回其对应的字符

ord(x):x为字符,返回其对应的Unicode编码

6、常用函数:

1、str[n]:按索引取值

你可以截取字符串的一部分并