2、Python基础速通(上):Python环境安装(Anaconda),Jupyter Notebook的使用,变量与数据类型,列表与字典
好,咱们正式开始动手了。
量化选股系统,说白了就是用代码来帮我们做投资决策。而Python,就是那把最顺手的刀。这一章,我带你先把刀磨好。
2.1 为什么是Anaconda?
很多新手会问:我直接装个Python不就行了?
嗯,理论上可以。但实际做量化,你会遇到一堆库——pandas、numpy、matplotlib、scikit-learn……一个个手动装,装完还可能版本冲突。我刚开始做量化的时候,就吃过这个亏。装了个旧版numpy,结果pandas死活跑不起来,折腾了一下午。
Anaconda就是来解决这个问题的。它自带Python,还预装了200多个常用科学计算库。说白了,就是一个「全家桶」,装完就能干活。
核心优势:
- 一键安装,省去配置环境变量的麻烦
- 自带conda包管理器,装库就像装App一样简单
- 支持创建虚拟环境,不同项目用不同Python版本,互不干扰
2.2 安装Anaconda
步骤很简单,我直接说重点。
- 去官网下载:https://www.anaconda.com/products/individual
- 选对版本:Windows就选Windows版,Mac选Mac版。Python版本选最新的就行,目前是3.9+。
- 安装时注意:Windows用户记得勾选「Add Anaconda to my PATH environment variable」。虽然安装程序会提醒你不推荐,但我个人习惯勾上,省得后面麻烦。
- 验证安装:打开终端(Windows是cmd或PowerShell),输入
conda --version,看到版本号就说明装好了。
避坑指南:我曾经遇到过安装路径有中文导致报错的情况。所以,安装路径最好全英文,不要有空格和中文。
2.3 Jupyter Notebook:量化分析的「草稿纸」
装好Anaconda后,你就能用Jupyter Notebook了。它是什么?
你可以把它理解成一个「能写代码的笔记本」。你可以在里面写代码、写注释、画图,还能随时运行某一段代码看结果。做量化分析时,我几乎天天用它。
启动方法:
- 在终端输入
jupyter notebook,浏览器会自动打开一个页面。 - 或者从开始菜单找到Anaconda Navigator,点「Launch」按钮。
界面很简单:左边是文件列表,右边是新建的笔记本。点「New」→「Python 3」,就能开始写代码了。
小技巧:Jupyter里按 Shift + Enter 运行当前单元格,按 Esc + B 在下方新建单元格。这些快捷键用熟了,效率翻倍。
2.4 变量与数据类型:代码的「积木」
好了,环境搭好了,咱们开始写代码。
变量,就是给数据起个名字。比如 price = 100,就是把数字100存到名叫price的盒子里。
Python的数据类型,常用的就这几种:
| 类型 | 例子 | 说明 |
|---|---|---|
| 整数(int) | a = 10 |
就是整数,没有小数点 |
| 浮点数(float) | b = 3.14 |
带小数点的数 |
| 字符串(str) | c = "茅台" |
用引号包起来的文本 |
| 布尔值(bool) | d = True |
只有True和False两种 |
你想想看,量化选股里,股价是浮点数,股票代码是字符串,是否买入是布尔值。是不是一下子就对上号了?
# 举个例子
stock_name = "贵州茅台"
current_price = 1800.50
is_buy = True
print(stock_name, current_price, is_buy)
注意:Python是动态类型语言,变量类型可以随时变。比如 x = 10 后,再写 x = "hello" 也是允许的。但我不建议你这么做,容易把自己搞晕。
2.5 列表:有序的「购物车」
列表,就是能装一堆东西的容器。用方括号 [] 表示。
# 一个股票池
stock_list = ["茅台", "五粮液", "泸州老窖", "洋河股份"]
print(stock_list[0]) # 输出:茅台
print(stock_list[-1]) # 输出:洋河股份
列表的索引从0开始,这个要记牢。我刚开始学的时候,总记成从1开始,结果老是取错数据。
常用操作:
stock_list.append("古井贡酒")— 在末尾添加一个元素stock_list.remove("五粮液")— 删除指定元素len(stock_list)— 获取列表长度stock_list[1:3]— 切片,取第2到第3个元素
个人经验:做量化时,我经常用列表来存股票代码列表,然后循环遍历去拉数据。比如 for code in stock_list: fetch_data(code),一行代码搞定所有股票的数据获取。
2.6 字典:有「标签」的储物柜
列表用索引找数据,字典用「键」找数据。字典用花括号 {} 表示,每个元素是 键:值 对。
# 一只股票的信息
stock_info = {
"name": "贵州茅台",
"code": "600519",
"price": 1800.50,
"pe": 45.6
}
print(stock_info["name"]) # 输出:贵州茅台
print(stock_info.get("pe")) # 输出:45.6
字典在量化里太常用了。比如存一只股票的所有财务数据,或者存一个策略的参数配置。
常用操作:
stock_info["market"] = "上海"— 添加或修改键值对del stock_info["pe"]— 删除键值对stock_info.keys()— 获取所有键stock_info.values()— 获取所有值
避坑指南:我曾经在循环里用 for key in stock_info: 遍历字典,然后试图修改字典的键值对,结果报错了。记住,遍历字典时不要修改它的大小,否则会出问题。
2.7 本章知识体系
下面这张图,帮你把这一章的知识点串起来:
这一章的内容,说白了就是三件事:把环境搭好,学会用变量存数据,再用列表和字典把数据组织起来。地基打牢了,后面盖楼才稳。