Skip to content

基本数据类型

Python 中有多种基本数据类型,每种类型都有其特定的用途和操作方式。

数据类型概览

Python 主要有以下几种基本数据类型:

类型说明示例
int整数42, -7, 0
float浮点数3.14, -0.5, 2.0
str字符串"hello", 'Python'
bool布尔值True, False
NoneType空值None

整数(int)

整数是没有小数部分的数字,可以是正数、负数或零。

python
x = 10
y = -5
z = 0

# 不同进制的表示
a = 10      # 十进制
b = 0b1010  # 二进制
c = 0o12    # 八进制
d = 0xA     # 十六进制

print(a, b, c, d)  # 10 10 10 10

整数运算

python
a = 10
b = 3

print(a + b)   # 加法:13
print(a - b)   # 减法:7
print(a * b)   # 乘法:30
print(a / b)   # 除法:3.333...
print(a // b)  # 整除:3
print(a % b)   # 取余:1
print(a ** b)  # 幂运算:1000

浮点数(float)

浮点数是带有小数部分的数字。

python
x = 3.14
y = -0.5
z = 2.0

# 科学计数法
a = 1.23e5   # 123000.0
b = 1.23e-2  # 0.0123

print(a, b)  # 123000.0 0.0123

浮点数运算

python
a = 3.14
b = 2.0

print(a + b)   # 5.14
print(a - b)   # 1.14
print(a * b)   # 6.28
print(a / b)   # 1.57

浮点数精度问题

python
# 浮点数可能有精度问题
print(0.1 + 0.2)  # 0.30000000000000004

# 使用 round() 函数处理
print(round(0.1 + 0.2, 2))  # 0.3

字符串(str)

字符串是由字符组成的序列,使用单引号、双引号或三引号表示。

python
# 单引号
s1 = 'Hello'

# 双引号
s2 = "World"

# 三引号(多行字符串)
s3 = '''这是一个
多行字符串'''

s4 = """这也是一个
多行字符串"""

字符串操作

python
s1 = "Hello"
s2 = "World"

# 拼接
print(s1 + " " + s2)  # Hello World

# 重复
print(s1 * 3)  # HelloHelloHello

# 索引
print(s1[0])  # H
print(s1[-1])  # o

# 切片
print(s1[1:4])  # ell
print(s1[:3])  # Hel
print(s1[2:])  # llo

# 长度
print(len(s1))  # 5

字符串方法

python
s = "Hello World"

# 大小写转换
print(s.upper())   # HELLO WORLD
print(s.lower())   # hello world
print(s.title())   # Hello World

# 查找
print(s.find("World"))  # 6
print(s.find("Python"))  # -1

# 替换
print(s.replace("World", "Python"))  # Hello Python

# 分割
print(s.split())  # ['Hello', 'World']

# 去除空白
s2 = "  hello  "
print(s2.strip())  # hello

布尔值(bool)

布尔值只有两个值:TrueFalse

python
a = True
b = False

print(type(a))  # <class 'bool'>
print(type(b))  # <class 'bool'>

布尔运算

python
a = True
b = False

# 逻辑运算
print(a and b)  # False
print(a or b)   # True
print(not a)    # False

# 比较运算
print(10 > 5)   # True
print(10 < 5)   # False
print(10 == 10) # True
print(10 != 5)  # True

布尔值转换

python
# 转换为布尔值
print(bool(1))      # True
print(bool(0))      # False
print(bool(""))     # False
print(bool("hello")) # True
print(bool([]))     # False
print(bool([1, 2])) # True

空值(NoneType)

None 表示空值或无值。

python
x = None
print(x)         # None
print(type(x))   # <class 'NoneType'>

# 判断是否为 None
if x is None:
    print("x 是 None")

类型检查

使用 type() 函数检查变量类型:

python
x = 42
y = 3.14
z = "hello"
w = True
v = None

print(type(x))  # <class 'int'>
print(type(y))  # <class 'float'>
print(type(z))  # <class 'str'>
print(type(w))  # <class 'bool'>
print(type(v))  # <class 'NoneType'>

使用 isinstance() 函数检查变量是否为特定类型:

python
x = 42
print(isinstance(x, int))   # True
print(isinstance(x, float)) # False
print(isinstance(x, (int, float)))  # True

类型转换

不同类型之间可以相互转换:

python
# 转换为整数
print(int(3.14))      # 3
print(int("42"))      # 42
print(int(True))      # 1
print(int(False))     # 0

# 转换为浮点数
print(float(42))      # 42.0
print(float("3.14"))  # 3.14

# 转换为字符串
print(str(42))        # "42"
print(str(3.14))      # "3.14"
print(str(True))      # "True"

# 转换为布尔值
print(bool(0))        # False
print(bool(1))        # True
print(bool(""))       # False
print(bool("hello"))  # True

总结

Python 的基本数据类型包括:

  1. 整数(int):没有小数部分的数字
  2. 浮点数(float):带有小数部分的数字
  3. 字符串(str):字符组成的序列
  4. 布尔值(bool):True 或 False
  5. 空值(NoneType):表示无值

掌握这些基本数据类型及其操作是 Python 编程的基础,接下来的章节将学习更复杂的数据结构和控制流程。