Python 语法学习笔记——知识分享(3)

前言:基础数据类型

Python 中内置的基础数据类型包括以下几种:

  1. 数值类型
  2. 序列类型
  3. 映射类型
  4. 集合类型
  5. 空类型

使用 Python 内置的 type( ) 函数可以获取任何对象的数据类型。

一、数值类型

Python 中内置的数值类型可细分为以下几类:

  1. 整型 int
  2. 布尔类型 bool
  3. 实型 float
  4. 复数类型 complex

1.1 整型

整型代表整数数据,包括正整数、负整数和零。

整型数据通常以十进制表示,也可以用二进制、八进制或十六进制表示:

  1. 使用二进制时,在整数数值前面须加上 0B \ 0b (数字 0,字母 B \ b);
  2. 使用八进制时,在整数数值前面须加上 0O \ 0o (数字 0,字母 O \ o);
  3. 使用十六进制时,在整数数值前面须加上 0X \ 0x (数字 0,字母 X \ x)。

例如:二进制数 Ob1101、八进制数 0o15、十六进制数 0xD 都表示十进制数 13

1.2 布尔类型

布尔类型指只有两个取值 (True 和 False) 的数据类型,它代表真 (True) 和假 (False) 的逻辑值。

1.3 实型

实型,也称为浮点型,代表由整数和小数组成的数据。

实型数据除了可以一般写法表示外,也可以采用科学计数法表示,
例如:一般写法:0.002005,科学计数法:2.005e-3

1.4 复数类型

复数类型代表由实部和虚部组成的数据。

注意: 复数的实部和虚部都属于实型数据。

在 Python 中,复数数据一般表示为:a + bj,其中 a、b 分别为复数的实部和虚部。

二、序列类型

Python 中内置的序列类型可细分为以下几类:

  1. 字符串 str
  2. 列表 list
  3. 元组 tuple

2.1 字符串

在单引号(' ')、双引号(" ")、三对引号(''' '''/ """ """) 内的数据都属于字符串类型的数据,其中,单引号和双引号用于实现单行字符串,三对引号用于实现多行字符串。

注意: 在 Python 中,字符串数据无法被修改,若要修改字符串,只能将新的字符串赋值给变量。

2.1.1 转义字符

在字符串中,反斜杠 \ 具有转义功能,当反斜杠后面出现规定的字符、符号或数字时,反斜杠便会同其后的字符、符号或数字一起组成一个具有特殊含义或作用的字符,将其称为转义字符。

如果不想字符串中出现的反斜杠执行转义,可以在字符串前面,即左引号前面使用字母 rR,使转义字符视为普通的字符,如:S = r"\t"

2.1.2 格式化字符串

当需要字符串中的特定内容会随着某些变量的值的变化而变化时,Python 允许用户利用格式化字符串的语法来解决该需求。

格式化字符串的一般语法是通过 f-string 以字面量的形式格式化字符串:在字符串前面使用字母 f,然后再在字符串的内容中使用大括号 { } 来包裹指定的变量或表达式。代码运行时,会将大括号包裹的内容 (连同大括号一起) 替换为变量的值或表达式的结果。例如:

num = 1
S = f"num is {num}"

2.2 列表

列表是由方括号 [ ] 包裹起来的、由英文逗号隔开的、有序的元素序列。列表中的元素可以是不同类型的,特别地,列表中的元素也可以是另一个列表。当列表的方括号 [ ] 中没有元素时,即为空列表。

与字符串不同,列表中的元素是可变的,可以对列表进行增加元素、删除元素和修改元素等操作。

2.2.1 在列表中增加元素

  1. 利用 append( ) 方法可以在列表末尾添加新的指定元素;
  2. 利用 extend( ) 方法可以在列表末尾一次性添加多个指定元素;
  3. 利用 insert( ) 方法可以将指定元素添加到列表中的指定位置。

2.2.2 在列表中删除元素

  1. 最简单的办法是通过索引将要删除的位置赋值为空,即 [ ]。例如
num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
num[3:6] = [ ]
print(num)  # 结果为 [1, 2, 3, 7, 8, 9]
  1. 通过 del 语句来实现删除操作。例如
num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
del num[3:6]
print(num)  # 结果为[1, 2, 3, 7, 8, 9]
  1. 利用 pop( ) 方法可以依索引删除列表中的一个元素;
  2. 利用 remove( ) 方法可以依值删除列表中的一个元素。

2.3 元组

元组是由小括号 ( ) 包裹起来的元素序列,是元素固定、不可变的列表。当元组的小括号 ( ) 中没有元素时,即为空元组。

特别地,当元组中只包含一个元素时,需要在元素后面添加英文逗号,否则括号会被当作运算符,例如:

tup1 = (50)
type(tup1)
# 结果为 <class 'int'>
tup2 = (50,)
type(tup2)
# 结果为 <class 'tuple'>

序列类型数据的共同特征和操作

序列类型数据中的每个元素都有对应的位置值,称之为索引,利用索引可以访问序列类型数据中指定位置的元素。

索引有两种类型:

  1. 索引的起始值为 0 0 0,表示从序列的头部开始,下一个元素的索引是上一个元素的索引 + 1 +1 +1,例如:
num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(num[1])  # 结果为 2
  1. 索引的起始值为 − 1 -1 1,表示从序列的尾部开始,上一个元素的索引是下一个元素的索引 − 1 -1 1,例如:
num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(num[-5])  # 结果为 5

此外,利用索引还可以进行切片操作,从而截取序列类型数据的一部分元素。

  • 基本格式:
    变量名[n : m]
    表示对序列类型数据中索引在 n 与 m 之间的所有元素进行浅拷贝并返回拷贝结果。
  • 切片原则:
    遵循左闭右开的原则,截取的部分元素包括索引为 n 的元素,但不包括索引为 m 的元素。
  • 其它语法格式:
    1. n 省略不写,即 变量名[ : m]
      此时默认从第一个元素开始截取;
    2. m 省略不写,即 变量名[n : ]
      此时默认截取元素至最后一个;
    3. 引入步长 u ,即 变量名[n : m : u]
      此时每隔 ∣ u ∣ − 1 |u|-1 u1 个元素截取一个元素。当 u 为负数时,可以实现向反方向截取元素的操作。

三、映射类型(字典)

字典 (dict) 是 Python 中的映射类型,是由大括号 { } 包裹起来的、由英文逗号隔开的、无序的键值对序列。

由于字典属于无序模型,因此字典不支持索引和切片。

键值对即 key: value,其中 key 为键值,value 为实值。当字典的大括号 { } 中没有键值对时,即为空字典。

注意:

  1. key 不可以重复出现,否则字典只会保留最后出现的一个;
  2. value 可以重复;
  3. key 可以是任意的数据类型,但不能出现可变的数据类型,以保证 key 唯一。
    (key 大多数情况都为字符串类型)
  4. value 可以是任意的数据类型,包括可变的数据类型。

3.1 在字典中查看实值

  1. 由于字典中每一个键值都与一个实值相关联,因此,可利用键值来访问字典中对应的实值,即以变量名[key]的方式访问对应的实值;
  2. 利用 get( ) 方法可以访问指定键值在字典中对应的实值;
  3. 利用 setdefault( ) 方法可以访问已经存在于字典中的键值所对应的实值。

3.2 在字典中增加键值对

  1. 当直接对字典中不存在的键值赋予实值时,即变量名[new_key] = new_value,Python 会自动将键值对 new_key: new_value 添加到字典中;
  2. 利用 setdefault( ) 方法可以在字典中添加不存在于字典中的新的键值;
  3. 利用 update( ) 方法可以将另一个字典中的键值对添加到指定字典中。

3.3 在字典中删除键值对

  1. 利用 del 语句来实现删除操作,其语法格式为:del 变量名[key]
  2. 利用 clear( ) 方法可以删除字典内的所有键值对;
  3. 利用 popitem( ) 方法可以删除字典中的最后一个键值对;
  4. 利用 pop( ) 方法可以依键值来删除字典中的键值对。

四、集合类型

可变集合 (set) 是 Python 中的集合类型,是由大括号 { } 包裹起来的、由英文逗号隔开的、无序的元素序列。

由于集合也属于无序模型,因此集合也不支持索引和切片。

集合和字典类似,但集合中的每一个元素都是一个值的形式,而字典中的每一个键值对都是两个值的形式。

注意: 集合中的元素可以是任意的数据类型,但不能出现可变的数据类型,且集合中不会出现重复的元素。

4.1 在集合中增加元素

  1. 利用 add( ) 方法可以在集合中添加指定元素;
  2. 利用 update( ) 方法可以在集合中一次性添加多个元素。

4.2 在集合中删除元素

  1. 利用 clear( ) 方法可以删除集合中的所有元素;
  2. 利用 remove( ) 方法或 discard( ) 方法可以依值删除集合中的元素;
  3. 利用 pop( ) 方法可以随机删除集合中的一个元素。

由于集合中的每个元素不会重复出现,因此,集合的主要作用便是去重和判重。

4.3 集合间的运算

  1. 并集运算
    作用:用于合并两个集合中的所有元素,重复的元素只保留一个。
    语法:set_value1 | set_value2
  2. 交集运算
    作用:用于将两个集合中都包含的元素提取出来。
    语法:set_value1 & set_value2
  3. 差集运算
    作用:用于从第一个集合中删除那些也属于第二个集合的元素。
    语法:set_value1 - set_value2
  4. 对称差集运算
    作用:用于将两个集合中互不包含的元素提取出来。
    语法:set_value1 ^ set_value2

五、空类型

空类型 (NoneType) 是 Python 中的一个特殊的数据类型,用于表示空值或不存在的值,而 None 是 Python 中唯一的空类型对象。

空类型可以以 变量名 = None 的形式来表示没有确定数据类型的、没有被赋予任何具体数据的变量。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值