当前位置:首页>python>Python基础语法

Python基础语法

  • 2026-10-06 19:33:17
Python基础语法

Python 是一种高级、解释型、通用的编程语言,因其简洁明了的语法和强大的功能库,在人工智能、数据分析、Web 开发、自动化脚本等领域广受欢迎。本文将从零开始,全面掌握 Python 的基础语法,为后续深入学习打下坚实基础。


一、Python 简介

Python 由荷兰程序员吉多·范罗苏姆(Guido van Rossum)于 1989 年圣诞节期间创建,其设计哲学强调代码的可读性和简洁性。Python 的名字来源于作者喜爱的英国喜剧团体“Monty Python”,而非爬行动物蟒蛇。

1.1 Python 的特点

  • 简单易学:语法接近自然语言,新手友好。
  • 跨平台:支持 Windows、macOS、Linux 等操作系统。
  • 解释型语言:无需编译,边解释边执行。
  • 丰富的标准库:内置大量模块,如文件操作、网络通信、正则表达式等。
  • 动态类型:变量无需声明类型,运行时自动确定。
  • 面向对象:支持类与对象,封装、继承、多态。
  • 开源生态强大:拥有庞大的第三方库(如 NumPy、Pandas、Django、Flask)。

二、环境搭建与第一个程序

2.1 安装 Python

访问官网 https://www.python.org 下载最新版本的 Python(推荐使用 Python 3.x)。安装时务必勾选“Add Python to PATH”选项,以便在命令行中直接使用 python 命令。

验证是否安装成功:

python --version

输出类似 Python 3.11.5 即表示安装成功。

2.2 运行第一个 Python 程序

打开命令行或 IDLE(Python 自带的开发环境),输入以下代码:

print("Hello, World!")

按下回车,屏幕上会显示:

Hello, World!

这就是经典的“Hello, World!”程序,标志着你正式踏入编程世界!


三、变量与数据类型

3.1 变量

变量是用于存储数据的容器。在 Python 中,定义变量非常简单,只需写出变量名并赋值即可:

name = "Alice"age = 25height = 1.68is_student = True

Python 是动态类型语言,变量的类型会在运行时根据值自动推断。

⚠️ 注意:变量名不能以数字开头,不能包含空格或特殊符号(可用下划线 _),且区分大小写。

合法变量名示例:

  • user_name
  • age
  • _temp

非法变量名示例:

  • 2name(以数字开头)
  • first-name(含连字符)
  • class(关键字)

3.2 常见数据类型

字符串操作

greeting = "Hello"name = "Bob"message = greeting + ", " + name + "!"  # 字符串拼接print(message)  # 输出:Hello, Bob!# 使用 f-string 格式化(推荐)message = f"{greeting}, {name}!"print(message)

f-string 是 Python 3.6 引入的强大功能,可以在大括号 {} 中直接嵌入变量或表达式。


四、运算符

Python 支持多种运算符,用于执行数学计算、比较判断和逻辑操作。

4.1 算术运算符

print(2 ** 3)   # 8print(10 // 3)  # 3print(10 % 3)   # 1

4.2 比较运算符

结果为布尔值(True 或 False)。

4.3 逻辑运算符

x = 5print(x > 3 and x < 10)  # Trueprint(not (x == 4))      # True

五、控制流程

程序的执行顺序称为“流程控制”。Python 提供了条件判断和循环结构来控制程序走向。

5.1 条件语句(if-elif-else)

根据条件决定执行哪段代码。

age = 18if age < 13:    print("你是儿童")elif age < 18:    print("你是青少年")else:    print("你是成年人")

输出:你是成年人

⚠️ 注意:Python 使用缩进来表示代码块,通常用 4 个空格。不要混用 Tab 和空格!

5.2 循环语句

(1)while 循环

当条件为真时重复执行代码。

i = 1while i <= 5:    print(i)    i += 1  # 相当于 i = i + 1

输出:

12345

(2)for 循环

用于遍历序列(如列表、字符串、范围等)。

# 遍历数字范围for i in range(1, 6):  # 从1到5    print(i)# 遍历字符串for char in "Python":    print(char)# 遍历列表fruits = ["apple", "banana", "orange"]for fruit in fruits:    print(fruit)

range() 函数常用形式:

  • range(5)→ 0,1,2,3,4
  • range(2, 6)→ 2,3,4,5
  • range(1, 10, 2)→ 1,3,5,7,9(步长为2)

六、数据结构

Python 提供了多种内置的数据结构,用于组织和管理数据。

6.1 列表(List)

列表是有序、可变的集合,允许重复元素。

numbers = [1, 2, 3, 4]names = ["Alice", "Bob", "Charlie"]# 访问元素(索引从0开始)print(names[0])     # Aliceprint(names[-1])    # Charlie(最后一个)# 修改元素names[1] = "David"# 添加元素names.append("Eva")           # 末尾添加names.insert(1, "Frank")      # 在指定位置插入# 删除元素names.remove("Frank")         # 删除指定值del names[0]                  # 删除指定索引popped = names.pop()          # 弹出最后一个元素# 遍历列表for name in names:    print(name)

列表切片(Slice):

nums = [0, 1, 2, 3, 4, 5]print(nums[1:4])    # [1, 2, 3] —— 左闭右开print(nums[:3])     # [0, 1, 2]print(nums[2:])     # [2, 3, 4, 5]print(nums[::-1])   # [5,4,3,2,1,0] —— 反转

6.2 元组(Tuple)

元组与列表相似,但不可修改(immutable)。

point = (3, 5)colors = ("red", "green", "blue")# 访问方式与列表相同print(point[0])  # 3# 不能修改# point[0] = 4  # ❌ 报错

优点:更安全、性能略高,常用于函数返回多个值。

6.3 字典(Dictionary)

字典是键值对(key-value)的无序集合,通过键快速查找值。

student = {    "name": "Alice",    "age": 20,    "major": "Computer Science"}# 访问值print(student["name"])        # Aliceprint(student.get("age"))     # 20# 添加/修改student["grade"] = "A"student["age"] = 21# 删除del student["major"]# 遍历字典for key, value in student.items():    print(f"{key}: {value}")

输出:

name: Aliceage: 21grade: A

常见方法:

  • .keys():获取所有键
  • .values():获取所有值
  • .items():获取所有键值对

6.4 集合(Set)

集合是无序、不重复的元素集合,支持数学集合运算。

set1 = {1, 2, 3}set2 = {3, 4, 5}# 并集print(set1 | set2)  # {1,2,3,4,5}# 交集print(set1 & set2)  # {3}# 差集print(set1 - set2)  # {1,2}# 添加元素set1.add(4)# 删除元素set1.discard(1)

七、函数

函数是一段可重复使用的代码块,用来完成特定任务。

7.1 定义函数

使用 def 关键字定义函数:

def greet(name):    """打招呼函数"""    print(f"Hello, {name}!")# 调用函数greet("Tom")  # 输出:Hello, Tom!

7.2 返回值

使用 return 返回结果:

def add(a, b):    return a + bresult = add(3, 5)print(result)  # 8

7.3 参数类型

  • 位置参数:按顺序传递
  • 默认参数:提供默认值
  • 关键字参数:调用时指定参数名
def introduce(name, age=18):    print(f"我叫{name},今年{age}岁。")introduce("Lucy")           # 我叫Lucy,今年18岁。introduce("Mike", 25)       # 我叫Mike,今年25岁。introduce(age=30, name="Jane")  # 我叫Jane,今年30岁。

7.4 匿名函数(lambda)

用于定义简单的单行函数:

square = lambda x: x ** 2print(square(4))  # 16# 常用于排序、过滤numbers = [3, 1, 4, 2]sorted_nums = sorted(numbers, key=lambda x: -x)  # 降序

八、文件操作

Python 可以轻松读写文件。

8.1 打开与关闭文件

# 方法一:手动关闭file = open("data.txt", "r", encoding="utf-8")content = file.read()print(content)file.close()# 方法二:推荐使用 with(自动关闭)withopen("data.txt", "r", encoding="utf-8") as f:    content = f.read()    print(content)

常见模式:

  • "r":读取(默认)
  • "w":写入(覆盖原内容)
  • "a":追加
  • "b":二进制模式(如 "rb")

8.2 逐行读取

with open("data.txt", "r", encoding="utf-8") as f:    for line in f:        print(line.strip())  # strip() 去除换行符

8.3 写入文件

with open("output.txt", "w", encoding="utf-8") as f:    f.write("第一行\n")    f.write("第二行\n")

九、异常处理

程序运行中可能出现错误(如文件不存在、除零等),使用 try-except 捕获异常,防止程序崩溃。

try:    num = int(input("请输入一个数字:"))    result = 10 / num    print(f"结果是:{result}")except ValueError:    print("输入的不是有效数字!")except ZeroDivisionError:    print("不能除以零!")except Exception as e:    print(f"发生未知错误:{e}")else:    print("计算成功!")finally:    print("程序结束")
  • try:可能出错的代码
  • except:捕获特定异常
  • else:没有异常时执行
  • finally:无论是否有异常都会执行

十、模块与包

随着项目变大,代码需要分模块管理。

10.1 导入模块

Python 标准库提供了许多模块,如 math、random、datetime。

import mathprint(math.sqrt(16))  # 4.0from random import randintprint(randint(1, 10))  # 随机输出1~10之间的整数from datetime import datetimeprint(datetime.now())

10.2 创建自己的模块

新建文件 mymodule.py:

# mymodule.pydef say_hello():    print("Hello from mymodule!")

在另一个文件中导入:

import mymodulemymodule.say_hello()

十一、面向对象编程(OOP)

Python 支持面向对象编程,核心概念包括类、对象、封装、继承、多态。

11.1 定义类与对象

class Dog:    def __init__(self, name, age):        self.name = name        self.age = age    def bark(self):        print(f"{self.name} 在汪汪叫!")# 创建对象dog1 = Dog("旺财", 3)dog2 = Dog("小黑", 2)dog1.bark()  # 旺财 在汪汪叫!print(dog2.name)  # 小黑
  • __init__是构造函数,创建对象时自动调用
  • self表示当前实例,类似于 Java 中的this

11.2 继承

子类可以继承父类的属性和方法。

class Animal:    def speak(self):        passclass Cat(Animal):    def speak(self):        print("喵喵喵")class Dog(Animal):    def speak(self):        print("汪汪汪")# 多态def make_sound(animal):    animal.speak()make_sound(Cat())  # 喵喵喵make_sound(Dog())  # 汪汪汪

十二、实用技巧与建议

12.1 使用 IDE 或编辑器

推荐工具:

  • PyCharm(专业版功能强大)
  • VS Code(轻量免费,插件丰富)
  • Jupyter Notebook(适合数据分析和教学)

12.2 学习资源推荐

  • 官方文档:https://docs.python.org
  • 菜鸟教程:https://www.runoob.com/python
  • 廖雪峰 Python 教程
  • LeetCode 刷题练习

12.3 编码规范

遵循 PEP 8 规范:

  • 使用 4 个空格缩进
  • 变量名用小写字母加下划线(user_name)
  • 类名用驼峰命名法(StudentInfo)
  • 每行不超过 79 个字符

总结

本文系统介绍了 Python 的基础语法,包括:

  • 变量与数据类型
  • 运算符与表达式
  • 控制流程(条件、循环)
  • 数据结构(列表、元组、字典、集合)
  • 函数定义与调用
  • 文件读写
  • 异常处理
  • 模块与包
  • 面向对象编程

掌握这些基础知识后,可以进一步学习:

  • 网络爬虫(requests + BeautifulSoup)
  • 数据分析(pandas + matplotlib)
  • Web 开发(Flask/Django)
  • 机器学习(scikit-learn, TensorFlow)

Python 的学习曲线平缓,但能力强大。坚持动手实践,多写代码,会越来越熟练。编程不仅是技术,更是一种思维方式。祝在 Python 的世界里越走越远!


✅ 附录:常用内置函数速查表

最新文章

随机文章