Python中基本的数据类型包括整型、浮点型、复数型和布尔型;这是Python中最基本的部分,几乎所有的Python程序都会包含这些数据类型。
在学习这些是基本数据类型之前有必要了解几个Python中的基本函数:id(x),type(x),isinstance(x,y)
id(x):查看x的内存单元地址,x可以是常量也可以是变量;
type(x):返回x的数据类型,x可以是常量也可以是变量;
isinstance(x,y):判断x的数据类型是否是y,返回True或者False,x可以是常量也可以是变量;
内置函数的详细解析:https://blog.csdn.net/qq_40627333/article/details/80929711
一、整型:
整型是Python中最基本最简单最基本的一种数据类型,整型简单来说就是整数类型,因此当我们看到a = 3,b = 9的时候,可以毫不犹豫的说a和b是整型变量,3和9是整型数值;关于整型只了解这么多的话,是远远不够的,整型数据不仅仅包含了十进制,还有二进制、八进制和十六进制;如下面代码所示:
a = 0b11 # 二进制整数
b = 0o11 # 八进制整数
c = 0x11 # 十六进制整数
print(a, type(a))
print(b, type(b))
print(c, type(c))
在Python中二进制数以0b开头,八进制数以0o开头,十六进制数以0x开头;数字0后面的字母b,o,x不区分大小写;
既然谈到不同进制的整型数据,就不免要加些废话来说说不同进制之间的转换问题:把任意一种整型数据转化为二进制整数用bin()函数,把任意一种整型数据转化为八进制整数用oct()函数,把任意一种整型数据转化为十进制整数用int()函数,把任意一种整型数据转化为十六进制整数用hex()函数;把其他数据类型转化为整型需要用的也是int()函数,这些函数可以大家自行试验,这里不做过多阐述,如果在执行过程中遇到问题我们可以随时探讨。
二、浮点型:
即浮点型数据(或许你愿意的话可以称之为实型),Python中好像不支持除十进制以外其他的浮点型数据(如果你发现某些情况下可以支持的话请及时告诉我,感谢你教会了我一个重要的知识点!),不过可以编写特点算法实现不同进制之间浮点型数据的转换(如果你需要了解而且自己不想进一步操作的话请评论区与我联系);把其他数据类型转化为浮点型用float()方法。在Python中浮点型有两种表示方法:小数形式和科学计数法形式,具体使用如代码所示:
# 用小数形式表示:
a = 6.6
print(a, type(a)) # 输出为:6.6 <class 'float'>
# 科学计数法表示:e表示以10为底,e后面的数为指数
b = 6.6e1
print(b, type(b)) # 输出为:66.0 <class 'float'>
应该注意的是:指数不能为浮点型数据,否则会报错:"SyntaxError: invalid syntax";e前面不能为空,如果e前面为空的话,就成为一个变量,例如e2,e4等。
浮点数中最重要的是精度问题,浮点数在内存中是以二进制的形式进行存储,Python语言以双精度(64)位来保存浮点数,多余的位会被截掉,因此我们能看到无差错的浮点型数据(只是一少部分无差错);当然,除了在某些判断两个浮点数是否相等的场合,在一般的运算中我们不去考虑这些精度问题;除非是特别关心精度的程序,必须要设置相应的机制来确保程序正确运行。
三、复数型
Python中复数的一般表现形式是a+bj或者a+bJ;即与J的大小写无关(建议使用小写);a和b为具体的数值(例如3+4j,6.0+8.0j等),复数在内存中以浮点型数据形式进行保存;下面讨论一些有关复数的常用问题:
1、复数的表示:
a = 3 + 4j # 复数a
print(type(a)) # 结果为:<class 'complex'>
b = 3.0 + 4.0j # 复数b
print(type(b)) # 结果为:<class 'complex'>
2、取出复数的实部或虚部:
a_real = a.real # 取a的实部
b_real = b.real # 取b的实部
print(a_real) # 结果为:3.0
print(b_real) # 结果为:3.0
a_imag = a.imag # 取a的虚部
b_imag = b.imag # 取b的虚部
print(a_imag) # 结果为:4.0
print(b_imag) # 结果为:4.0
3、求复数的共轭复数:
a1 = a.conjugate() # 求a的共轭复数
b1 = b.conjugate() # 求b的共轭复数
print(a1) # 结果为:3 - 4j
print(b1) # 结果为:3.0 - 4.0j
4、求复数的模:
a_die = abs(a) # 求a的模
b_die = abs(b) # 求b的模
print(a_die) # 结果为:5.0
print(b_die) # 结果为:5.0
四、布尔型
布尔型数据只有两个值:True和False,即真和假;一般布尔型数据用于对条件的判断。
布尔型还支持一些特殊运算(与、并、非、异或):
a&b(与) | a|b(并) | not a(非a) | not b(非b) | a^b(异或) | |
a=True;b=True | True | True | False | False | False |
a=True;b=False | False | True | False | True | True |
a=False;b=True | False | True | True | False | True |
a=False;b=False | False | False | True | True | False |
如果有不恰当或者错误的地方请大家及时指出,不胜感激!
补充内容地址:https://blog.csdn.net/qq_40627333/article/details/83384959