Python提供了许多内置数据类型,包括:
- 数值型(Numeric Types):整数(int)、浮点数(float)、布尔值(bool)
- 字符串(String):用单引号或双引号括起来的字符序列
- 空 (None):是一个特殊的数据类型,表示一个空的、没有任何值的对象。
- 列表(List):有序、可变、允许重复的元素序列
- 元组(Tuple):有序、不可变、允许重复的元素序列
- 字典(Dictionary):键值对组成的无序集合
- 集合(Set):无序、不重复的元素的集合
下面分开讲解并展示常用操作。
一、数值型
整数(int)是没有小数部分的数字,可以为正整数、负整数或零。例如:-5, 0, 10等。
浮点数(float)是带有小数部分的数字,可以为正浮点数、负浮点数或零。例如:-3.14, 0.5, 2.0等。
在Python中,可以使用以下操作对数值进行常用操作:
(一)、加法:使用"+"符号进行两个数值的相加。 例:a = 10, b = 5, c = a + b # c的值为15
(二)、减法:使用"-"符号进行两个数值的相减。 例:a = 10, b = 5, c = a - b # c的值为5
(三)、乘法:使用"*"符号进行两个数值的相乘。 例:a = 10, b = 5, c = a * b # c的值为50
(四)、除法:使用"/"符号进行两个数值的相除,结果为浮点数。 例:a = 10, b = 5, c = a / b # c的值为2.0
(五)、整除:使用"//"符号进行两个数值的整除,结果为整数。 例:a = 10, b = 3, c = a // b # c的值为3
(六)、求余:使用"%"符号进行两个数值的求余。 例:a = 10, b = 3, c = a % b # c的值为1
(七)、幂运算:使用"**"符号对数值进行幂运算。 例:a = 2, b = 3, c = a ** b # c的值为8
二、字符串
(一)、定义字符串:可以使用单引号或双引号来定义字符串。
str1 = 'Hello World'
str2 = "Python is awesome"
(二)、访问字符串中的字符:可以使用索引来访问字符串中的单个字符(索引从0开始)。
print(str1[0]) # 输出 'H'
print(str2[6]) # 输出 'i'
(三)、字符串长度:可以使用len()
函数来获取字符串的长度。
print(len(str1)) # 输出 11
print(len(str2)) # 输出 17
(四)、字符串切片:可以使用切片操作来获取字符串中的子串。
print(str1[0:5]) # 输出 'Hello'
print(str2[7:]) # 输出 'is awesome'
(五)、字符串拼接:可以使用+
操作符来拼接两个字符串。
str3 = str1 + ' ' + str2
print(str3) # 输出 'Hello World Python is awesome'
三、空
(一)、比较:可以使用is
操作符来比较对象是否为None。
x = None
if x is None:
print("x is None")
(二)、赋值:可以将None赋值给一个变量。
x = None
(三)、函数返回值:可以在函数中使用return语句返回None值。
def my_function():
# do something
return None
(四)、判空:可以使用None来判断一个变量是否为None。
x = None
if x is None:
print("x is None")
四、列表
(一)、列表(list)是一种可变的有序序列,允许存储任意类型的值。列表使用方括号 [ ] 来定义,其中的元素通过逗号分隔。
my_list = [1, 2, 3, "four", 5.0]
(二)、访问元素:可以使用索引来访问列表中的元素。索引从0开始,并且可以是负数表示从列表末尾开始计数。例如,my_list[0]
会返回列表中的第一个元素。
# 访问元素
print(my_list[0]) # 输出:1
print(my_list[-1]) # 输出:5.0
(三)、添加元素:可以使用 append()
方法向列表末尾添加一个元素,也可以使用 insert()
方法在指定位置插入一个元素。
# 添加元素
my_list.append(6)
print(my_list) # 输出:[1, 2, 3, "four", 5.0, 6]
my_list.insert(2, "three")
print(my_list) # 输出:[1, 2, "three", 3, "four", 5.0, 6]
(四)、删除元素:可以使用 remove()
方法删除列表中的指定元素,也可以使用 del
关键字删除指定索引的元素。
# 删除元素
my_list.remove("four")
print(my_list) # 输出:[1, 2, "three", 3, 5.0, 6]
del my_list[3]
print(my_list) # 输出:[1, 2, "three", 5.0, 6]
(五)、切片操作:可以使用切片操作符 [start:end]
来截取列表的部分元素。其中,start
表示起始位置(包含),end
表示结束位置(不包含)。
# 切片操作
print(my_list[1:4]) # 输出:[2, "three", 5.0]
(六)、长度:可以使用 len()
函数获取列表的长度(即元素个数)。
# 长度
print(len(my_list)) # 输出:5
(七)、其他操作:还可以使用 sort()
方法对列表进行排序,使用 count()
方法统计列表中某个元素的出现次数,使用 index()
方法查找某个元素的索引。
# 其他操作
my_list.sort()
print(my_list) # 输出:[1, 2, 5.0, 6, "three"]
print(my_list.count(2)) # 输出:1
五、元组
(一)、定义tuple:可以使用圆括号将一组值括起来来创建一个tuple。
tup1 = (1, 2, 3)
tup2 = ('a', 'b', 'c')
(二)、访问tuple元素:可以通过索引来访问tuple中的元素,索引从0开始。
print(tup1[0]) # 输出:1
print(tup2[1]) # 输出:b
(三)、切片操作:可以使用切片操作符来获取tuple的子集。
print(tup1[1:]) # 输出:(2, 3)
(四)、连接tuple:可以使用加号运算符来连接两个或多个tuple。
tup3 = tup1 + tup2
print(tup3) # 输出:(1, 2, 3, 'a', 'b', 'c')
(五)、获取tuple长度:可以使用内置函数len()来获取tuple的长度。
print(len(tup1)) # 输出:3
(六)、元素检查:可以使用in和not in操作符来检查一个元素是否存在于tuple中。
print(2 in tup1) # 输出:True
print('d' not in tup2) # 输出:True
(七)、元素计数:可以使用count()方法来统计某个元素在tuple中出现的次数。
tup4 = (1, 2, 2, 3, 3, 3)
print(tup4.count(2)) # 输出:2
print(tup4.count(4)) # 输出:0
(八)、元素索引:可以使用index()方法来查找某个元素在tuple中的索引,如果元素不存在会抛出ValueError异常。
print(tup4.index(2)) # 输出:1
print(tup4.index(4)) # 抛出ValueError异常
六、字典
字典(dict)是一种无序的、可变的数据类型。它由键(key)和值(value)组成,键和值之间使用冒号(:)进行分隔,键值对之间使用逗号(,)进行分隔,整个字典使用花括号({})进行表示。
my_dict = {"name": "田所浩二", "age": 24, "city": "下北泽"}
常用的字典操作:
(一)、访问字典中的元素: 可以使用键来访问字典中的值,类似于通过索引来访问列表中的元素。
name = my_dict["name"]
如果键不存在,会抛出KeyError异常。可以使用get()
方法来避免异常的抛出:
name = my_dict.get("name", "default_value")
如果键不存在,会返回指定的默认值。
(二)、添加/更新字典中的元素: 可以通过赋值的方式来添加/更新字典中的元素。
my_dict["name"] = "Alice" # 更新值
my_dict["city"] = "San Francisco" # 添加新的键值对
(三)、删除字典中的元素: 可以使用del
关键字来删除字典中的元素。
del my_dict["name"]
也可以使用pop()
方法来删除字典中的元素,并返回删除的值:
age = my_dict.pop("age")
(四)、判断字典中是否存在某个键: 可以使用in
关键字来判断字典中是否存在某个键。
if "name" in my_dict:
print("Key exists")
(五)、获取字典的键和值: 可以使用keys()
、values()
和items()
方法来获取字典的键、值和键值对。
keys = my_dict.keys() # 获取所有的键
values = my_dict.values() # 获取所有的值
items = my_dict.items() # 获取所有的键值对
七、集合
set数据类型是一种无序且不重复的集合。可以使用大括号 {} 或者 set() 函数来创建一个set。
(一)、定义set:
myset = {1, 2, 3} # 使用大括号创建set
myset = set([1, 2, 3]) # 使用set()函数创建set
(二)、添加元素: 使用add()方法或者update()方法来添加元素到set中。
myset.add(4) # 添加单个元素
myset.update([4, 5, 6]) # 添加多个元素
(三)、删除元素: 使用remove()方法来删除set中的元素,如果元素不存在会抛出KeyError异常。
myset.remove(4) # 删除元素4
(四)、查找元素: 使用in关键字来判断元素是否存在于set中。
if 4 in myset:
print("元素存在")
(五)、遍历集合: 使用for循环来遍历set中的元素。
for item in myset:
print(item)
(六)、求交集、并集和差集。
set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = set1 & set2 # 求交集
set4 = set1 | set2 # 求并集
set5 = set1 - set2 # 求差集(set1相对于set2)
(七)、判断子集和超集。
set1 = {1, 2, 3}
set2 = {1, 2}
if set2.issubset(set1): # 判断set2是否为set1的子集
print("set2是set1的子集")
if set1.issuperset(set2): # 判断set1是否为set2的超集
print("set1是set2的超集")
愿与最重要之人能再次相会。 —— 艾拉《可塑性记忆》