python常见的数据类型与数据结构(一)数字类型 字符串类型 布尔类型 列表 集合 字典 的定义与常规操作方法

python常见的数据类型与数据结构(一)数字类型 字符串类型 布尔类型 列表 集合 字典 的定义与常规操作方法

  • 数据类型
    • 数字类型
    • 字符串类型
    • 布尔类型
  • 数据结构
    • 列表
    • 集合
    • 字典

数据类型

数字类型

  • 数字类型有int(整数),float(浮点数)和complex(复数型),其中int与float被大家所常用并且可以使用int()和float()函数相互转换。如果字符串只包含数字和小数点也可以被这两种函数强制转换。复数型,则少被人们使用,大都是用在数学公式和物理公式的计算上。

int_simple = 123456
float_simple = 123456.9
complex_simple = complex(123456,123456)
# 三种数据类型定义方法,float要加小数点
print(int_simple,float_simple,complex_simple)
# 输出为 123456 123456.9 (123456+123456j)
print(int(float_simple),float(int_simple))
# 可以使用int和float函数来进行强制转换,int会舍去全部小数,而不是四舍五入
# 输出为123456 123456.0
str_simple = "13246.123456"
str_simple1 = "2323"
print(int(str_simple1),float(str_simple))
# 如果字符串的格式正确,也可以使用int和float来进行转换
# 输出为 2323 13246.123456

字符串类型

  • 字符串类型较为简单,但不可修改,不过却可以向列表一样正常进行切片和逆序
part_2 = str(132)
part_1 = "123abc"
# 字符串定义方法
print(part_1,part_2)
# 输出为123abc 132
print(part_1[0],part_1[-1])
# 也可以像列表一样按位查找
print(part_1[::-1])
# 同样可以进行切片、逆序等操作
part_1[0] = "k"
# 字符串是一种不可修改的变量,只支持查看,并不能修改
# 会报错,并提示:TypeError: 'str' object does not support item assignment

布尔类型

  • 和c一样 有True和Flase,在判断时True等于1、Flase 等于0

数据结构

列表

  • 在Python中,列表(List)是一种非常基础且重要的数据结构,它可以包含一系列有序的元素,这些元素可以是不同类型的数据,如整数、浮点数、字符串,甚至是另一个列表。列表在Python中由方括号 [] 定义,元素之间用逗号 , 分隔。
  • 列表的定义
# 定义一个空列表  
empty_list = []  
  
# 定义一个包含不同类型元素的列表  
mixed_list = [1, 2.3, "hello", True, [1, 2, 3]]  
  
# 定义一个包含相同类型元素的列表  
number_list = [1, 2, 3, 4, 5]  
  
# 列表也可以嵌套  
nested_list = [1, [2, 3], [4, [5, 6]]]
  • 列表的常规方法

  • Python列表提供了一系列方法来操作列表,包括添加、删除、修改和查询元素等。以下是一些常用的列表方法:

  • 添加元素

append(item): 在列表末尾添加元素。
insert(index, item): 在指定索引位置插入元素。
extend(iterable): 在列表末尾一次性添加另一个列表的所有元素。

  • 删除元素

remove(item): 删除列表中第一个匹配的元素。
pop(index): 删除指定索引位置的元素,并返回该元素。如果索引省略,则默认删除最后一个元素。
clear(): 清空列表中的所有元素。
del list[index]: 使用del语句删除指定索引位置的元素。

  • 修改元素

直接通过索引赋值来修改列表中的元素。

  • 查询元素

index(item): 返回列表中第一个匹配元素的索引,如果元素不存在则抛出异常。
count(item): 返回列表中匹配元素的个数。
in 和 not in: 检查元素是否存在于列表中。

  • 列表排序

sort(reverse=False): 对列表进行排序,reverse=True 可降序排序。
sorted(iterable, reverse=False): 返回一个新的已排序列表,原列表不变。

  • 其他方法

reverse(): 反转列表中的元素。
copy(): 复制列表。
list(iterable): 将可迭代对象转换为列表。

  • 切片操作

列表支持切片操作,可以获取列表的一个子集

# 获取索引1到3(不包括3)的元素  
sub_list = number_list[1:3]  # 结果为 [2, 3]
  • 列表推导式
    列表推导式也在日常被我们所使用
# 创建一个包含1到10的平方的列表  
squares = [x**2 for x in range(1, 11)]

集合

在Python中,集合(set)是一种无序且不包含重复元素的数据结构。它用于存储多个不重复的元素,并且集合的元素可以是任意类型。集合的定义通常使用大括号 {} 或者 set() 函数来创建。

  • 集合的定义
# 定义一个空集合  
empty_set = {}  
  
# 定义一个包含多个元素的集合  
my_set = {1, 2, 3, 4, 5}  
  
# 集合中的元素必须是不可变的,例如数字、字符串或元组  
another_set = {"apple", "banana", "cherry"}  
  

# 使用set()函数定义一个空集合  
empty_set = set()  
  
# 使用set()函数定义一个包含多个元素的集合  
my_set = set([1, 2, 2, 3, 4, 4, 4])  # 重复的元素会被自动去除  
  
# 转换其他可迭代对象为集合  
list_to_set = set([1, 2, 3])  
tuple_to_set = set((1, 2, 3))  
String_to_set = set("hello")  # 字符串的每个字符都将作为集合的元素
  • 集合的常规方法
    集合提供了一系列方法来操作集合元素,包括添加、删除、交集、并集等。以下是一些常用的集合方法:

  • 添加元素

add(element): 添加单个元素到集合中。
update(iterable): 添加多个元素到集合中,参数可以是另一个集合或者任何可迭代对象。

  • 删除元素
    remove(element): 移除集合中的一个元素,如果元素不存在则抛出异常。
    discard(element): 移除集合中的一个元素,如果元素不存在则什么也不做。
    pop(): 随机移除并返回一个集合中的元素,如果集合为空则抛出异常。
    clear(): 清空集合中的所有元素。

  • 查询元素

in 和 not in: 检查元素是否存在于集合中。

  • 集合运算

union(other, …): 返回两个或多个集合的并集。
intersection(other, …): 返回两个或多个集合的交集。
difference(other, …): 返回集合的差集,即存在于当前集合但不在其他集合中的元素。
symmetric_difference(other): 返回两个集合的对称差集,即存在于其中一个集合但不同时存在于两个集合中的元素。

  • 集合比较

issubset(other): 检查当前集合是否是另一个集合的子集。
issuperset(other): 检查当前集合是否是另一个集合的超集。
==, !=: 比较两个集合是否相等或不相等。

  • 集合的其他方法

len(s): 返回集合中元素的个数。
frozenset(s): 返回一个冻结集合,冻结集合不能被修改。

字典

  • 字典
    rep= {'I': 1,
          "V": 5,
          'X': 10,
          'L': 50,
          'C': 100,
          'D': 500,
          'M': 1000,
          'a': 4,
          'b': 9,
          'c': 40,
          'd': 90,
          'e': 400,
          'f': 900}
  • 在Python中,字典(dictionary)是一种无序的、可变的数据结构,用于存储键值对(key-value pairs)。每个键都是唯一的,并且与一个值相关联。字典由大括号 {} 定义,键和值之间用冒号 : 分隔,不同的键值对之间用逗号 , 分隔。

  • 字典的定义
    定义一个字典非常简单,只需要将键值对放在大括号内即可。

# 定义一个空字典  
empty_dict = {}  
  
# 定义一个包含多个键值对的字典  
my_dict = {  
    'name': 'Alice',  
    'age': 30,  
    'city': 'New York'  
}  
  
# 字典的键通常是不可变类型(如字符串、数字、元组),而值可以是任意类型  
another_dict = {  
    1: 'first',  
    2: 'second',  
    (3, 4): 'tuple as a key'  
}
  • 字典的常规方法
    字典提供了一系列内置方法来操作其内容,如添加、删除、修改和查询键值对等。以下是一些常用的字典方法:

  • 添加键值对

[key] = value: 直接通过键赋值来添加或修改键值对。
update(dict2): 使用另一个字典 dict2 的键值对来更新当前字典。
setdefault(key, default_value): 如果键存在,则返回其值;如果键不存在,则添加该键及其对应的默认值。

  • 删除键值对

del dict[key]: 删除字典中键为 key 的键值对。
pop(key, default_value): 删除并返回字典中键为 key 的值;如果键不存在,则返回 default_value(可选参数)。
clear(): 清空字典中的所有键值对。

  • 查询键值对

get(key, default_value): 返回字典中键为 key 的值;如果键不存在,则返回 default_value(可选参数)。
keys(): 返回一个包含字典所有键的视图。
values(): 返回一个包含字典所有值的视图。
items(): 返回一个包含字典所有键值对的视图。

  • 判断键值对的存在

in 和 not in: 检查某个键是否存在于字典中。

  • 字典的其他方法

len(dict): 返回字典中键值对的数量。
copy(): 返回字典的一个浅拷贝。

# 创建一个字典  
my_dict = {  
    'name': 'Alice',  
    'age': 30  
}  
  
# 添加键值对  
my_dict['city'] = 'New York'  
my_dict.update({'occupation': 'Engineer'})  
  
# 获取值  
name = my_dict['name']  
age = my_dict.get('age', 'Not provided')  
  
# 删除键值对  
del my_dict['age']  
my_dict.pop('city', None)  
  
# 判断键是否存在  
if 'occupation' in my_dict:  
    print("Occupation is in the dictionary.")  
  
# 遍历字典  
for key, value in my_dict.items():  
    print(f"{key}: {value}")  
  
# 获取字典的长度  
length = len(my_dict)  
  
# 复制字典  
copied_dict = my_dict.copy()

你可能感兴趣的:(Python学习,python,数据结构,windows,职场和发展,算法)