python基础教程初学者篇

介绍

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):表示真或假,值为 TrueFalse
  • 列表(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使用ifelifelse进行条件判断。

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提供了forwhile两种循环结构。

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}
说说我的看法