介绍
Python是一门优雅且强大的编程语言,现在已广泛应用在Web 开发、数据分析、人工智能等领域,本篇教程适合初学者入门。本教程将从以下几个方面详细介绍Python的基础知识:数据类型和变量、字符串和编码、使用list和tuple、条件判断、模式匹配、循环、使用dict和set。
1. 数据类型和变量
在Python中,变量不需要声明类型,直接赋值即可。Python支持多种内置数据类型,包括整型(int
)、浮点型(float
)、布尔型(bool
)、字符串(str
)和空值(None
)等。
# 整型
a = 10
# 浮点型
b = 3.14
# 布尔型
c = True # 或 False
# 字符串
d = "Hello, Python!"
# 空值
e = None
Python 的常见数据类型包括:
- 整数(int):表示整数,例如
1
,-2
。 - 浮点数(float):表示小数,例如
3.14
,-0.5
。 - 字符串(str):表示文本,例如
"Hello"
。 - 布尔值(bool):表示真或假,值为
True
或False
。 - 列表(list):有序的可变集合,例如
[1, 2, 3]
。 - 元组(tuple):有序的不可变集合,例如
(1, 2, 3)
。 - 字典(dict):键值对集合,例如
{"name": "Alice", "age": 25}
。 - 集合(set):无序的唯一元素集合,例如
{1, 2, 3}
。
如不确定当前变量是什么数据类型,还可以通过type()
函数查看变量的类型:
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'bool'>
print(type(d)) # <class 'str'>
2. 字符串和编码
字符串是Python中最常用的数据类型之一。可以使用单引号('
)或双引号("
)定义字符串。
string1 = 'Hello'
string2 = "World"
字符串支持拼接、索引和切片操作:
greeting = string1 + ", " + string2 + "!" # 拼接
print(greeting[0]) # 索引,输出'H'
print(greeting[:5]) # 切片,输出'Hello'
Python默认使用UTF-8编码处理字符串。如果需要处理其他编码格式,可以使用encode()
和decode()
方法:
utf8_string = "你好".encode('utf-8') # 转为字节流
gbk_string = utf8_string.decode('utf-8').encode('gbk') # 转为GBK编码
3. 使用list和tuple
List(列表)
列表是一种可变的有序集合,支持添加、删除、修改、排序等操作。
my_list = [1, 2, 3, 4]
print(my_list[0]) # 输出1
# 添加元素
my_list.append(5)
# 删除元素
my_list.remove(2)
# 修改元素
my_list[0] = 10
print(my_list) # 输出[10, 3, 4, 5]
# 排序
numbers = [3, 1, 4, 1, 5]
numbers.sort()
print(numbers) # 输出: [1, 1, 3, 4, 5]
Tuple(元组)
元组与列表类似,但它是不可变的,一旦创建,不能修改。
my_tuple = (1, 2, 3)
print(my_tuple[0]) # 输出1
# 元组不能修改
# my_tuple[0] = 10 # 会报错
4. 条件判断
Python使用if
、elif
和else
进行条件判断。
age = 18
if age >= 18:
print("成年人")
elif age >= 13:
print("青少年")
else:
print("儿童")
条件表达式可以使用比较运算符(<, >, ==, !=, <=, >=)和逻辑运算符(and, or, not)。
5. 模式匹配(Structural Pattern Matching)
从Python 3.10开始,引入了match
语句,用于模式匹配。
command = "start"
match command:
case "start":
print("启动程序")
case "stop":
print("停止程序")
case _:
print("未知命令")
模式匹配支持多种模式,例如字面量模式、变量模式、序列模式等:
point = (1, 2)
match point:
case (0, 0):
print("原点")
case (x, y) if x == y:
print("在 y=x 上")
case _:
print("其他位置")
6. 循环
循环用于重复执行一段代码,Python提供了for
和while
两种循环结构。
For循环
用于遍历可迭代对象(如列表、元组、字符串等)。
for i in range(5): # range(5)生成0到4的序列
print(i)
While循环
当条件为真时,重复执行代码块。
count = 0
while count < 5:
print(count)
count += 1
7. 使用dict和set
Dict(字典)
字典是一种键值对的无序集合,键必须是不可变类型(如字符串、数字、元组),值可以是任意类型。
my_dict = {"name": "Alice", "age": 25}
print(my_dict["name"]) # 输出'Alice'
# 添加键值对
my_dict["city"] = "Beijing"
# 删除键值对
del my_dict["age"]
print(my_dict) # 输出{'name': 'Alice', 'city': 'Beijing'}
Set(集合)
集合是一种无序且不重复的元素集合,支持多种集合操作,如并集、交集、差集等。
my_set = {1, 2, 3, 4}
my_set.add(5) # 添加元素
my_set.remove(1) # 删除元素
print(my_set) # 输出{2, 3, 4, 5}
# 集合运算
set1 = {1, 2, 3}
set2 = {3, 4, 5}
print(set1.union(set2)) # 并集,输出{1, 2, 3, 4, 5}
print(set1.intersection(set2)) # 交集,输出{3}