在Python中,数据类型是指数据的种类或类型。常见的基本数据类型包括数字类型、字符串、布尔值等。每个数据类型都有其特定的操作和行为,理解它们是学习Python的关键。除了数据类型,变量也是编程中非常重要的概念,变量用于存储数据,便于后续操作。
3.1 数字类型:整数与浮点数
Python支持多种数字类型,最常用的两种是整数(int
)和浮点数(float
)。数字类型用于表示各种数值,如数量、距离、温度等。
3.1.1 整数(int
)
整数是没有小数部分的数值。Python的整数没有大小限制,可以表示任意大小的整数(只受内存限制)。
示例:
# 整数类型
x = 10 # 正整数
y = -5 # 负整数
z = 0 # 零
print(x, y, z)
3.1.2 浮点数(float
)
浮点数是包含小数部分的数值,通常用来表示精确度更高的数值(如测量数据)。浮点数的表示可以使用科学记数法。
示例:
# 浮点数类型
a = 3.14 # 正浮点数
b = -2.718 # 负浮点数
c = 0.0 # 浮点零
d = 1e3 # 科学记数法表示1,000
print(a, b, c, d)
3.1.3 数字运算
Python支持基本的算术运算,如加法、减法、乘法、除法等。
常见运算符:
+
加法-
减法*
乘法/
除法(结果是浮点数)//
整除(去掉小数部分)%
取余**
幂运算
x = 7
y = 3
# 加法
print(x + y) # 10
# 除法
print(x / y) # 2.3333...
# 整除
print(x // y) # 2
# 取余
print(x % y) # 1
# 幂运算
print(x ** y) # 343
3.2 字符串:定义、拼接与格式化
字符串是用引号括起来的字符序列。它们可以包含字母、数字、符号以及空格。Python中的字符串可以用单引号('
)或双引号("
)定义。
3.2.1 字符串定义
字符串可以使用单引号或双引号来定义,它们是等价的。
示例:
# 单引号字符串
str1 = 'Hello, World!'
# 双引号字符串
str2 = "Python Programming"
3.2.2 字符串拼接
你可以使用+
运算符来拼接字符串,也可以使用join()
方法。
示例:
first_name = "John"
last_name = "Doe"
# 使用 + 进行字符串拼接
full_name = first_name + " " + last_name
print(full_name) # John Doe
# 使用 join() 方法拼接
full_name = " ".join([first_name, last_name])
print(full_name) # John Doe
3.2.3 字符串格式化
Python提供了几种方式来格式化字符串,即将变量的值嵌入到字符串中。
1.百分号(%)格式化:
name = "Alice"
age = 25
print("Name: %s, Age: %d" % (name, age)) # Name: Alice, Age: 25
2.str.format()
方法:
name = "Bob"
age = 30
print("Name: {}, Age: {}".format(name, age)) # Name: Bob, Age: 30
3.f-string(Python 3.6+): f-string是Python 3.6引入的一种简洁且高效的字符串格式化方式,可以直接在字符串中嵌入表达式。
name = "Charlie"
age = 35
print(f"Name: {name}, Age: {age}") # Name: Charlie, Age: 35
3.3 布尔值:True
和 False
布尔值(Boolean)是Python中的另一种基本数据类型,它只有两个值:True
和 False
。布尔值通常用于条件判断和逻辑运算。
3.3.1 布尔值的使用
布尔值常常与逻辑运算符(and
、or
、not
)结合使用,或用于控制流语句(如if
语句)中。
示例:
x = 10
y = 5
# 布尔值的比较
print(x > y) # True
print(x == y) # False
print(x < y) # False
# 逻辑运算
print(True and False) # False
print(True or False) # True
print(not True) # False
3.4 变量的命名规范和作用域
3.4.1 变量命名规范
在Python中,变量名是用来引用数据的标识符。命名规范如下:
- 变量名必须以字母(a-z, A-Z)或下划线(
_
)开头。 - 后续字符可以是字母、数字或下划线。
- 变量名区分大小写,例如
myVar
和myvar
是不同的变量。 - 不能使用Python的关键字作为变量名(如
if
,for
,while
,True
等)。 - 为了提高代码的可读性,通常使用小写字母,并通过下划线(
_
)分隔多个单词,例如my_variable
。
示例:
# 正确的命名
age = 25
first_name = "Alice"
is_active = True
# 错误的命名(关键字、数字开头、空格等)
# 2nd_name = "Bob" # 错误,不能以数字开头
# first name = "Bob" # 错误,变量名中不能有空格
# if = "Hello" # 错误,不能使用Python关键字
3.4.2 变量作用域
作用域是指变量或函数有效的区域。Python中有两种主要的作用域:
- 局部作用域(Local Scope):函数内部定义的变量,只能在该函数内访问。
- 全局作用域(Global Scope):函数外部定义的变量,在整个程序中都可以访问。
示例:
# 全局变量
x = 10
def my_function():
# 局部变量
y = 5
print("Inside function:", x, y) # 可以访问全局变量x和局部变量y
my_function()
print("Outside function:", x) # 只能访问全局变量x
# print(y) # 错误,y是局部变量,不能在函数外访问
在Python中,如果在函数内修改了一个全局变量,必须使用 global
关键字来显式声明。
示例:
x = 10
def modify_global():
global x
x = 20 # 修改全局变量x
modify_global()
print(x) # 输出 20
小结
- 数字类型:Python支持整数(
int
)和浮点数(float
)。可以进行各种基本的算术运算。 - 字符串:字符串是由引号括起来的文本,可以进行拼接和格式化操作。
- 布尔值:布尔值只有两个取值:
True
和False
,用于条件判断和逻辑运算。 - 变量命名规范:Python变量名必须遵循一定的命名规范,避免使用关键字,并区分大小写。
- 作用域:变量的作用域决定了它在程序中的可访问范围,分为局部作用域和全局作用域。
掌握这些基础的数据类型与变量知识,将帮助你更好地理解Python程序的结构,写出清晰、易于维护的代码。