人工智能学习笔记 - 编程与工具 - 语言基础和工具

7 阅读3分钟

人工智能学习笔记 - 编程与工具 - 语言基础和工具

本章节总结人工智能常用的编程语言 Python 基础语法及 Jupyter/JupyterLab 的使用方法,是学习和实验的基础工具。


Python 基础语法

Hello World

print("Hello, World!")

注释

  • 单行注释
# 这是一个单行注释
  • 多行注释
"""
这是一个多行注释
可以写多行说明
"""
def add(a, b):
    """返回 a 与 b 的和"""
    return a + b

数据类型

  • 数值类型
    • int:整数,例如 x = 10
    • float:浮点数,例如 y = 3.14
    • complex:复数,例如 z = 1+2j
  • 文本类型
    • str:字符串,例如 s = "AI"
  • 布尔类型
    • bool:True/False,例如 flag = True
  • 序列类型
    • list:列表,可变序列,例如 lst = [1,2,3]
    • tuple:元组,不可变序列,例如 t = (1,2,3)
    • range:整数序列,例如 r = range(5)
  • 集合类型
    • set:无序不重复集合,例如 st = {1,2,3}
    • frozenset:不可变集合,例如 fst = frozenset([1,2,3])
  • 映射类型
    • dict:键值对,例如 d = {"a":1, "b":2}
  • 空值类型
    • None:空值,用于占位或初始化,例如 x = None
  • 日期类型
    • datetime:日期和时间,例如
      from datetime import datetime
      now = datetime.now()
      
  • 其他高级类型
    • 函数对象,例如 def f(): return 1
    • 生成器,例如 gen = (x*x for x in range(5))
    • 类,例如 class MyClass: pass
    • 模块,例如 import math

变量与常量

变量

x = 10
y = 3.14
name = "Alice"

常量(Python 没有真正常量约束,约定全大写表示常量)

PI = 3.14159

运算

  • 数学运算:+, -, *, /, //(整除), %(取余), **(幂)
  • 比较运算:==, !=, >, <, >=, <=
  • 逻辑运算:and, or, not
  • 成员运算:in, not in
  • 身份运算:is, is not

控制逻辑

  • 条件语句
if x > 0:
    print("Positive")
elif x == 0:
    print("Zero")
else:
    print("Negative")
  • for 循环
for i in range(5):
    print(i)
  • while 循环
n = 0
while n < 5:
    print(n)
    n += 1
  • 循环控制
  break # 提前退出循环
  continue # 跳过本次循环

函数定义与调用

# 定义函数
def add(a, b):
    return a + b

# 调用函数
result = add(3, 5)
print(result)
  • 注意
    • 参数可以有默认值:def func(a, b=2)
    • 可变参数:
      • *args:用于传递任意数量的位置参数,
        def func(*args): 
          print(args) 
        func(1,2,3)
        # 结果
        > (1,2,3)
        
      • **kwargs:用于传递任意数量的关键字参数
        def func(**kwargs): 
        print(kwargs) 
        func(a=1,b=2)
        # 结果
        > {'a':1,'b':2}
        
    • 匿名函数:lambda x: x**2

导入模块与包

  • 模块
# 导入整个模块
import math

# 导入模块中的某个对象
from math import sqrt, pi
"""
my_package/         # 包
    __init__.py     # 包初始化文件
    module1.py
    module2.py
"""
import my_package.module1
from my_package import module2

推导式

  • 列表推导式
[表达式 for 变量 in 可迭代对象 if 条件]
  • 集合推导式
{表达式 for 变量 in 可迭代对象 if 条件}
  • 字典推导式
{key_expr: value_expr for 变量 in 可迭代对象 if 条件}
  • 生成器推导式
(表达式 for 变量 in 可迭代对象 if 条件)
  • 总结

    • 列表推导式:生成列表 [ ]
    • 集合推导式:生成集合 { },自动去重
    • 字典推导式:生成字典 {key: value}
    • 生成器表达式:生成惰性序列 ( ),节省内存
  • 优势:

    • 语法简洁
    • 可嵌套
    • 支持条件过滤
    • 高效、可读性强

Jupyter Notebook / JupyterLab

用途

  • 交互式 Python 开发环境
  • 支持代码执行、可视化、笔记记录
  • 常用于数据分析、可视化、机器学习实验
  • Jupyter Notebook支持单文件的编辑,JupyterLab集成了Jupyter Notebook的所有能力,并且支持多文档编辑以及高度扩展

使用方式

  • 安装
pip install jupyterlab
  • 启动
jupyter notebook    # 启动 Notebook
jupyter lab         # 启动 JupyterLab
  • 功能
    • 代码执行与输出展示
    • 支持图表可视化(matplotlib, seaborn
    • 支持 Markdown 文本和公式记录
    • 可以导出为 HTMLPDF