2、Python基础速通(一):Python环境安装(Anaconda)、Jupyter Notebook使用、变量与数据类型
说实话,很多新手学Python,第一步就被环境安装劝退了。什么Python官网、pip、虚拟环境……一堆概念砸过来,还没开始写代码就晕了。
我个人习惯用Anaconda。它把Python解释器、常用库、包管理器全打包好了。你装一个,就全有了。省心。
核心结论:Anaconda = Python + 常用库 + 包管理工具。装它就够了。
2.1 安装Anaconda
去官网下载对应系统的安装包。Windows、macOS、Linux都有。我建议下载最新版,别纠结版本号。
安装时注意两点:
- 勾选「Add Anaconda to my PATH environment variable」——这样你才能在命令行里直接用conda命令。我第一次装的时候没勾,后面折腾了半天才补上。
- 安装路径不要有中文和空格。嗯,这是老生常谈了,但总有人踩坑。
小技巧:装完后打开终端(Windows用cmd或PowerShell,Mac用终端),输入 conda --version,如果显示版本号,说明装好了。
2.2 Jupyter Notebook:写代码的「草稿本」
Jupyter Notebook是Anaconda自带的一个工具。说白了,它就是一个能在网页上写代码、跑代码、记笔记的东西。
为什么我推荐它?因为做量化交易,你经常要试各种策略、看各种数据。Jupyter可以让你一段一段地跑代码,随时看结果,特别适合探索式编程。
启动方式很简单:
# 在终端输入
jupyter notebook
浏览器会自动打开一个页面。点右上角的「New」→「Python 3」,就新建了一个笔记本。
核心操作:
- Shift + Enter:运行当前单元格,并跳到下一个
- Ctrl + Enter:运行当前单元格,不跳转
- Esc + A:在当前单元格上方插入新单元格
- Esc + B:在当前单元格下方插入新单元格
我在项目中经常用Jupyter做数据探索。比如拿到一份股票数据,先看看有没有空值、分布怎么样、相关性如何……这些操作在Jupyter里做,比在IDE里舒服多了。
2.3 变量与数据类型
好了,环境搭好了,工具也认识了。咱们开始写真正的代码。
Python里,变量就是给数据起个名字。你想想看,你总得有个方式记住某个值吧?变量就是干这个的。
# 定义一个变量
stock_code = "000001.SZ"
price = 10.5
volume = 10000
print(stock_code)
print(price)
print(volume)
Python是动态类型语言。什么意思?就是你不用提前声明变量类型。你给它什么值,它就是什么类型。
注意:动态类型虽然方便,但也容易出问题。我曾经在写一个回测系统时,不小心把一个字符串赋值给了本该是浮点数的变量,结果后面计算全错了。排查了半天才发现。
2.4 常见数据类型
做量化交易,你主要会用到以下几种数据类型:
| 类型 | 名称 | 示例 | 说明 |
|---|---|---|---|
| int | 整数 | 100 |
股票数量、交易次数等 |
| float | 浮点数 | 10.5 |
股价、收益率等 |
| str | 字符串 | "000001.SZ" |
股票代码、名称等 |
| bool | 布尔值 | True / False |
条件判断结果 |
| list | 列表 | [10.5, 11.2, 9.8] |
一组股价数据 |
| dict | 字典 | {"code": "000001", "price": 10.5} |
键值对,存股票信息 |
你可以用 type() 函数查看变量的类型:
price = 10.5
print(type(price)) # 输出:<class 'float'>
stock_code = "000001.SZ"
print(type(stock_code)) # 输出:<class 'str'>
2.5 列表与字典:量化交易的核心数据结构
做量化交易,你天天跟列表和字典打交道。
列表就是一组有序的数据。比如某只股票过去5天的收盘价:
close_prices = [10.5, 10.8, 10.3, 11.0, 10.9]
print(close_prices[0]) # 第一个元素:10.5
print(close_prices[-1]) # 最后一个元素:10.9
字典是键值对。比如存一只股票的多项信息:
stock_info = {
"code": "000001.SZ",
"name": "平安银行",
"close": 10.5,
"volume": 1000000
}
print(stock_info["name"]) # 输出:平安银行
我的习惯:在Jupyter里,我经常用列表存时间序列数据,用字典存单只股票的属性。这样后面做分析时,取数据特别方便。
2.6 类型转换
有时候你需要把一种类型转成另一种。比如从数据库里读出来的价格是字符串,但你要做数学运算,就得转成浮点数。
price_str = "10.5"
price_float = float(price_str) # 转成浮点数
print(price_float + 1.0) # 输出:11.5
# 反过来,把数字转成字符串
price_str_again = str(price_float)
print("当前价格:" + price_str_again) # 字符串拼接
避坑指南:我曾经从API接口拿到的数据里,有个字段是"10.5元",直接转float会报错。因为字符串里多了个"元"字。所以做类型转换前,一定要先清洗数据。
2.7 本章知识体系
下面这张图,帮你理清本章的核心逻辑:
这张图把本章内容串起来了。你按这个顺序学,思路会清晰很多。
本章小结:
- Anaconda是Python量化交易的最佳起点,装它就够了
- Jupyter Notebook是探索式编程的神器,快捷键要记熟
- 变量就是给数据起名字,Python自动推断类型
- 列表和字典是量化交易的核心数据结构,必须掌握
- 类型转换要小心,先清洗数据再转换
好了,环境搭好了,基础语法也过了一遍。下一章咱们会深入Python的控制流和函数,这些都是写量化策略的必备技能。
公众号:蓝海资料掘金营,微信deep3321