python的基本数据类型

一.数值类型

数值类型主要包括整数、浮点数和复数

1.整数(int)

整数类型用于表示没有小数部分的数值

x = 10
y = -5
z = 0

特点:

  • 可以是正数、负数或零
  • 在Python 3中,整数不受大小限制,仅受内存限制

2.浮点数(float)

浮点数类型用于表示带小数部分的数值

a = 3.14
b = -2.718
c = 0.0

特点:

  • 表示实数,可以包括小数部分
  • 使用64位双精度表示

3.复数(complex)

复数类型用于表示复数,包含实部和虚部

x = 1 + 2j
y = 3 - 4j

特点:

  • 由实部和虚部组成,实部和虚部都是浮点数
  • 可以使用.real.imag属性访问实部和虚部

二.序列类型

序列类型包括字符串、列表、元组等,用于存储有序的元素

1.字符串(str)

字符串是字符的序列,用引号(单引号或双引号)括起来

s = "Hello, World!"

特点:

  • 不可变(immutable):一旦创建,无法修改
  • 支持切片和各种字符串操作方法
print(s[0])          # 输出: H
print(s[7:12])       # 输出: World
print(s.lower())     # 输出: hello, world!

2.列表(list)

列表是可变的有序集合,用方括号表示。列表中的元素可以是不同类型

lst = [1, 2, 3, "a", "b", "c"]

特点:

  • 可变(mutable):可以修改、添加和删除元素
  • 支持切片和各种列表操作方法
print(lst[0])         # 输出: 1
lst.append(4)
print(lst)            # 输出: [1, 2, 3, 'a', 'b', 'c', 4]
lst[2] = "new"
print(lst)            # 输出: [1, 2, 'new', 'a', 'b', 'c', 4]

3.元组(tuple)

元组是不可变的有序集合,用圆括号表示

tup = (1, 2, 3, "a")

特点:

  • 不可变(immutable):一旦创建,无法修改
  • 通常用于固定数据组的存储
print(tup[0])         # 输出: 1
# tup[1] = "new"      # 会报错,因为元组不可变

三.映射类型

映射类型主要包括字典(dictionary),用于存储键值对

1.字典(dict)

字典是无序的键值对集合,用大括号表示

d = {'name': 'Alice', 'age': 25}

特点:

  • 可变(mutable):可以修改、添加和删除键值对
  • 键必须是唯一的,通常是字符串或数字,值可以是任意类型
print(d['name'])         # 输出: Alice
d['age'] = 26
print(d)                 # 输出: {'name': 'Alice', 'age': 26}
d['gender'] = 'Female'
print(d)                 # 输出: {'name': 'Alice', 'age': 26, 'gender': 'Female'}

四.集合类型

集合类型包括集合(set)和冻结集合(frozenset),用于存储无序不重复的元素

1.集合(set)

s = {1, 2, 3, 4}

特点:

  1. 无序性:集合中的元素没有固定顺序。这意味着集合不支持索引、切片等有序操作
  2. 不重复性:集合中的元素是唯一的,即同一个元素在集合中只能出现一次
  3. 可变性:集合是可变的,元素可以动态添加或删除
  4. 元素类型:集合的元素必须是不可变的(如整数、浮点数、字符串、元组等),但集合本身是可变的

(1).创建集合

可以使用花括号 {} 或 set() 函数创建集合

# 使用花括号创建集合
fruits = {"apple", "banana", "cherry"}

# 使用 set() 函数创建空集合
empty_set = set()

使用 {} 创建空字典而不是集合,因此创建空集合必须使用 set() 函数

a.创建空字典

  • 使用 {} 创建的是一个空字典
  • 空字典表示的是一个没有键值对的映射类型数据结构
  • 空字典的语法是
empty_dict = {}

b.创建空集合

  • 使用 set() 创建的是一个空集合
  • 空集合表示的是一个没有元素的无序集合类型数据结构
  • 空集合的语法是
empty_set = set()

(2)基本操作

集合支持多种操作,包括添加、删除元素以及集合运算

a.添加元素add()

fruits.add("orange")
print(fruits)  # 输出: {"apple", "banana", "cherry", "orange"}

b.删除元素remove() 和 discard()

fruits.remove("banana")
# fruits.remove("pear")  # 若元素不存在,`remove()` 将抛出 KeyError
fruits.discard("pear")  # 若元素不存在,`discard()` 不会抛出错误

c.集合运算:并集、交集、差集和对称差集

# 定义两个集合
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}

# 并集:所有元素的集合
union_set = set1 | set2
print(union_set)  # 输出: {1, 2, 3, 4, 5, 6}

# 交集:共同元素的集合
intersection_set = set1 & set2
print(intersection_set)  # 输出: {3, 4}

# 差集:在 set1 中但不在 set2 中的元素集合
difference_set = set1 - set2
print(difference_set)  # 输出: {1, 2}

# 对称差集:不在交集中的元素集合
symmetric_difference_set = set1 ^ set2
print(symmetric_difference_set)  # 输出: {1, 2, 5, 6}

d.数据去重:利用集合的元素唯一性,可以方便地去重

# 列表中含有重复元素
list_with_duplicates = [1, 2, 2, 3, 4, 4, 5]

# 使用集合去重
unique_elements = list(set(list_with_duplicates))
print(unique_elements)  # 输出: [1, 2, 3, 4, 5]
numbers = {1, 2, 3, 4, 5}
print(3 in numbers)  # 输出: True
print(6 in numbers)  # 输出: False

你可能感兴趣的:(python,开发语言)