『无为则无心』Python基础 — 8、Python中的数据类型(数值、布尔、字符串)
2021-06-26 22:31
1111 查看
目录
可变数据(3 个):当该数据类型对应变量的值发生了改变,那么它对应的内存地址不发生改变,对于这种数据类型,就称可变数据类型。
1、数据类型介绍
(1)什么是数据类型
在生活中,我们日常使用的数据有大有小,有整数也有小数,同时也会使用字母或者汉字表示特定含义。而在每种编程语言里都会有一个叫数据类型的名词,数据类型就是对常用的各种数据格式进行了明确的划分,以应对不同的业务需求,并在使用时按经验将不同的变量定义不同的类型的数据。
(2)Python3中有七个标准的数据类型
- 数值型(
Number
) - 布尔型(
Bool
) - 字符串(
String
) - 集合(
Set
) - 列表(
List
) - 元组(
Tuple
) - 字典(
Dict
)
如下图所示:
(3)Python3中标准数据类型又可分为两大类
- 不可变数据类型(4个):当该数据类型对应变量的值发生了改变,那么它对应的内存地址也会发生改变,对于这种数据类型,就称不可变数据类型。
Number
(数值) Bool
(布尔值)String
(字符串)Tuple
(元组)
List(列表)
Dictionary(字典)
Set(集合)
总结:不可变数据类型更改后,地址发生改变;可变数据类型的更改,地址不发生改变。
提示:本篇文章我们主要介绍不可变数据类型中的数值、布尔值、字符串。其他的数据类型,之后逐个单独说明。
2、数值型(Number)
数字型(Number)是不可改变的数据类型,如果改变了数值型变量的值,将重新分配内存空间,让变量重新引用一个新的对象。(这点和 Java 的字符串差不多)
(1)Python 支持三种不同的数值类型
- 整型(
int
):通常被称为是整型或整数,正负数都可以。
Python3 整型是没有大小限制的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。
如果数字的长度过大,可以使用下划线作为分隔符。
10进制的数字不能以0开头。 - 浮点型(
float
56c ):浮点型由整数部分与小数部分组成(就是小数)。
浮点类型不精确存储。
浮点型可以支持科学计数法表示。 - 复数(
complex
):复数由实数部分和虚数部分构成,具体以后在说明。
(2)示例
# 1、定义int类型数据 a = 10 b = -20 # 2、Python3整型是没有大小限制的 # 输出结果不会报错 # 结果:999999999999999999999999 c = 999999999999999999999999 print(c) # 3、如果数字的长度过大,可以使用下划线作为分隔符 # 输出结果为123456789 d = 123_456_789 print(d) """ 4、10进制的数字不能以0开头 如下面e会报错: SyntaxError: invalid token(语法错误)。 """ e = 0123 print(e) ''' 5、其他进制的整数定义 只要是数字打印时一定是以十进制的形式显示的。 ''' # 二进制 0b开头 f = 0b10 # 二进制的10 # 八进制 0o开头 g = 0o10 # 十六进制 0x开头 h = 0x10 # 6、也可以通过运算符来对数字进行运算, # 并且可以保证整数运算的精确 i = -100 i = i + 3 # 7、浮点数(小数),在Python中所有的小数都是float类型 j = 1.23 j = 4.56 # 8、对浮点数进行运算时,可能会得到一个不精确的结果 k = 0.1 + 0.2 print(k) # 0.30000000000000004ad8
3、布尔型(bool)
- 布尔值全称
Boolean
,在Python中使用bool
简写表示布尔类型。一个布尔值只有True
、False
两种值,要么是True
表示真,要么是False
表示假。 - 布尔值主要用来做逻辑判断。
True
和False
就是字面量(常量),不用加引号,注意首字母大写。
示例:
# 1、定义布尔值(bool)变量 a = True b = False print('a =',a) # a = True print('b =',b) # b = False # 2、布尔值实际上属于整型子类, # True就相当于1,False就相当于0 print(1 + True) # 2 print(1 + False) # 1 # 3、可以通过布尔运算计算 c = 7 < 9 d = 7 > 8 print('c =',c) # c = True print('d =',d) # d = False # 4、布尔值经常用在条件判断中 if age >= 18: print('adult') else: print('teenager')
4、None(空值)
(1)None值的含义
空值是Python里一个特殊的值,用
None表示没有值,不存在。
None不能理解为
0,因为
0是有意义的,同理也不能理解成空字符串,而
None是一个特殊的空值,(
N必须大写)。
在Python中是没有Java中
NULL值,但相近意义于Java中
NULL值。
# None(空值)用来表示不存在 a = None print(a)
(2)关于None的注意事项
None
在 Python 解释器启动时自动创建, 解释器退出时销毁。None
和任何其他的数据类型比较永远返回False>>> None == 0 False >>> None == ' ' False >>> None == False False >>> None == None True
- 上也证明了
None
与0、空列表、空字符串不一样。 None
它属于NoneType
类型,且None
是NoneType
类型的唯一值。也就是说,我们不能再创建其它NoneType
类型的变量。- 可以将
None
赋值给任何变量,也可以给None
值变量赋值 None
不支持任何运算也没有任何内建方法,如没有像len
、size
等属性,要判断一个变量是否为Non
e,直接使用如下方式:a = None if a is None: print( 21a5 "hello python") pass
- 对于所有没有
return
语句的函数定义,Python 都会在末尾加上return None
。
None相对来说用的不多,主要是在对象中使用,我们知道表示不存在就可以。
5、常量
所谓常量就是值不能变的变量,比如常用的数学常数
π就是一个常量。在Python中,一般通过约定俗成的变量名全大写的形式表示这是一个常量。
PI = 3.14159265359
但事实上
PI仍然是一个变量,Python根本没有任何机制保证
PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量
PI的值,也没人能拦住你。
6、字符串(String)
(1)字符串类型说明
- 1、在Python中使用
str
简写表示字符串类型。 - 2、字符串用来表示一段文本信息,字符串是程序中使用的最多的数据类型。
- 3、字符串的内容几乎可以包含任何字符,英文字符也行,中文字符也行。
- 4、在Python中字符串需要使用引号引起来,
' '
单引号和" "
双引号都可以。 - 5、python中字符串是不可变的,一旦声明,不能改变。(同数值型)
(2)示例
# 1、在Python中字符串需要使用引号引起来 # 单引号和双引号都可以。 a = 'hello' b = "python" # s = 'hello" 引号不能混合使用 # 如果混合使用会报错,如下: # SyntaxError: EOL while scanning string literal """ # 2、字符串变量必须使用引号引起来,不使用不是字符串 d = abc Python解释器会认为abc是一个abc名称的变量, 在Python执行程序的时候, 如果之前没有定义过abc这个变量, 则会报出NameError错误。 """ """ # 3、相同的引号之间不能嵌套 也就是双引号里边不能在写双引号,单引号里边不能在单双引号。 e = "子曰:"学而时习之,乐呵乐呵!"" 而不同的引号之间是可以进行嵌套的,如下: """ f = '子曰:"学而时习之,乐呵乐呵!"' """ # 4、单引号和双引号不能跨行使用,跨行必须使用\进行换行。 如下g的执行结果为: 锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦。 在一行进行输出。 """ g = '锄禾日当午,\ 汗滴禾下土,\ 谁知盘中餐,\ 粒粒皆辛苦。' """ # 5、长字符串 使用一对三重引号来表示一个长字符串,如'''和\"\"\"。 三重引号内可以自动换行,并且会保留字符串中的格式。 如下g的执行结果为: 锄禾日当午, 汗滴禾下土, 谁知盘中餐, 粒粒皆辛苦。 """ h = '''锄禾日当午, 汗滴禾下土, 谁知盘中餐, 粒粒皆辛苦。''' """ # 6、字符串的复制 就是将字符串和数字相乘,乘以几表示复制几次。 * 在Pyhton语言中表示乘法。 所以如果将字符串和数字相乘,则解释器会将字符串重复指定的次数并返回。 """ # 输出结果:abc.abc.abc.abc.abc.abc.abc.abc.abc.abc. a = 'abc.' a = a * 10 print(a)
提示:以上就是Python中最基础的数据类型,一定要好好掌握。关于集合、列表、元组、字典这几个数据类型,后面会逐一单个的详解介绍。
相关文章推荐
- Python基础(二)------Python数据类型之数值、字符串和列表
- Python新手学习基础之数据类型——字符串的切片截取
- Python基础学习----数据类型,字符串,内置数据结构
- Python基础4:数据类型:数字 字符串 日期
- 【每天1分钟】PYTHON基础之数据类型-字符串(标准序列操作)
- Python基础一_数据类型与字符串编码
- 4-Python3从入门到实战—基础之数据类型(字符串-String)
- Python基础数据类型之字符串
- 007.Python基础数据类型之数字与字符串
- Python新手学习基础之数据类型——字符串类型
- Python基础:Python数据类型详解之字典与字符串
- python基础数据类型(一):字符串
- python基础数据类型:字符串操作
- 二、python 数值类型(字符串切片)和数据类型(元组)
- 【每天1分钟】PYTHON基础之数据类型-字符串(常用操作)
- Python基础:1.数据类型(空、布尔类型、整型、长整型、浮点型、字符串)
- Python基础学习 --- 数据类型之布尔类型
- Python基础学习 --- 数据类型之字符串
- python教程1:Python基础之数据类型和变量、字符串和编码
- Python新手学习基础之数据类型——字符串类型