1. Python基础
1.1 安装
- 下载并安装Python解释器:Python官网
- 推荐使用集成开发环境(IDE):如PyCharm、VS Code、Jupyter Notebook
1.2 基本语法
- 注释:
#
单行注释;''' '''
或""" """
多行注释 - 变量:无需声明类型,直接赋值
x = 10
- 数据类型:整数(int)、浮点数(float)、字符串(str)、布尔(bool)、列表(list)、字典(dict)、元组(tuple)、集合(set)
- 运算符:算术运算符(+,-,*,/,//,%),比较运算符(==,!=,>,<,>=,<=),逻辑运算符(and,or,not)
1.3 控制结构
- 条件语句:
if
,elif
,else
if condition_1: pass elif condition_2: pass else: pass
- 循环语句:
for
,while
for i in range(10): print(i) while condition: pass
1.4 函数
- 定义函数使用
def
关键字def function_name(parameters): # function body return value
1.5 类与对象
- 类定义及对象创建
class MyClass: def __init__(self, attribute): self.attribute = attribute def method(self): return self.attribute obj = MyClass('value') print(obj.method())
2. 常用模块
2.1 os 模块
- 进行操作系统相关操作,如文件和目录操作
import os os.listdir('.') # 列出当前目录下的文件和文件夹 os.getcwd() # 获取当前工作目录 os.mkdir('new_dir') # 创建新文件夹
2.2 sys 模块
- 访问与Python解释器相关的变量和函数
import sys sys.argv # 命令行参数列表 sys.path # 模块的搜索路径 sys.exit() # 退出程序
2.3 datetime 模块
- 处理日期和时间
import datetime now = datetime.datetime.now() print(now.strftime('%Y-%m-%d %H:%M:%S'))
2.4 re 模块
- 正则表达式,用于字符串匹配
import re pattern = re.compile(r'\d+') result = pattern.findall('123abc456') print(result) # ['123', '456']
2.5 json 模块
- 编码和解码JSON数据
import json data = {'name': 'John', 'age': 30} json_str = json.dumps(data) print(json_str) # '{"name": "John", "age": 30}' data = json.loads(json_str) print(data) # {'name': 'John', 'age': 30}
2.6 requests 模块
- 发送HTTP请求
import requests response = requests.get('https://api.github.com') print(response.status_code) print(response.json())
3. 项目实战
3.1 数据分析
- 使用
pandas
进行数据分析import pandas as pd df = pd.read_csv('data.csv') print(df.head())
3.2 数据可视化
- 使用
matplotlib
进行数据可视化import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.show()
3.3 机器学习
- 使用
scikit-learn
进行机器学习建模from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import accuracy_score data = load_iris() X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2) model = RandomForestClassifier() model.fit(X_train, y_train) predictions = model.predict(X_test) print(accuracy_score(y_test, predictions))