编辑 | Cowboy
校对 | 李明
来源 | 牛角财经
目的 | python量化基础 | 变量和简单的数据类型,零基础都可以看懂!!!
python教程
从入门到高级(免费)
特点:案例基于金融市场数据展开,让python量化初学者快速上手!
一,基础部分:
人生苦短,我用python!数据类型条件分支与循环列表与元组字典函数类Python的标准库捕捉异常
数据类型
Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。一般变量赋值格式:“变量名” + “=“ + “值”。
Python中有6个标准的数据类型:Number(数字),String(字符串),List(列表),Tuple(元组),Set(集合),Dictionary(字典)。
1.Number(数字)
一般变量的赋值格式:“变量名” + “=“ + “值”
例如:国内螺纹钢期货rb1910合约现在的价格为 3793,将价格3793赋值给rb1901这个变量。
'''螺纹钢rb1910现在的价格为3793'''rb1901 = 3793 #赋值变量print(rb1901) #打印变量
run:
3793
变量,顾名思义。我们的rb1901变量对应的值3793是可以改变的
例如:将rb1901合约价格随着行情的上下波动,那么对应的值也应该跟随着改变。
'''螺纹钢rb1910现在的价格为3793'''rb1901 = 3793'''价格向上波动,变量rb1910的值也会跟着变动'''rb1901 = 4321print(rb1901)
run:
4321
rb1910初始值3793,被重新赋值4321。
2.String(字符串)
Python中的字符串用单引号 ' 或双引号 " 括起来。
例如:
'''String(字符串)'''rb1901 = "3793"#或者rb1901 = '3793'
run:
结果都一样
37933793
字符串的截取:变量[头下标:尾下标]
如果我们想把合约代码:rb1901,中的字母rb截取出来怎么办呢?
例如:
合约代码:r b 1 9 0 1
索 引:0 1 2 3 4 5
code = "rb1901"print(code[0:2])
run:
rb
直接通过:code[0:2]就可以取出rb。这里需要提醒一下,括号里面。类似于左闭右开区间。
[包含当前索引的值 :不包含当前索引的值]
再比如,取出变量rb1910的数字部分,
用code[2: ]获取从索引2开始到末尾的位置。
合约代码:r b 1 9 0 1
索 引:0 1 2 3 4 5
code = "rb1901"print(code[2:])
run:
1901
3.List(列表)
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
列表截取的语法格式如下:
变量[头下标:尾下标]
获取列表中的字符串'r','b'有两种方式。
'''列表'''list1 = ['r','b','1','9','0','1']print(list1[0:2])print(list1[0:-4])
run:
['r', 'b']['r', 'b']
同理,想要获取列表中,['1','9','0','1']也很简单
'''列表'''list1 = ['r','b','1','9','0','1']print(list1[2:])
run:
['1', '9', '0', '1']
4.Tuple(元组)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
元组中的元素类型也可以不相同:
'''元组'''tuple1 = ('r','b',1901)print(tuple1[0:2])print(tuple1[2: ])
run:
('r', 'b')(1901,)
5.Set(集合)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。基本功能是进行成员关系测试和删除重复元素。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}或者set(value)
例如:
'''集合'''all = {'rb1901','hc1906','TA1910'}set('rb1901')print(all)print(set('rb1901'))
run:
{'rb1901', 'hc1906', 'TA1910'}{'b', '1', 'r', '9', '0'} #集合是没有无序的
6.Dictionary(字典)
字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的。
'''字典'''code_dict = {'rb1901':3409,'hc1903':3031,'TA1906':5494}print(code_dict)
run:
{'rb1901': 3409, 'hc1903': 3031, 'TA1906': 5494}
如需本案例代码,微信关注:‘牛角财经’ ,回复:‘对应标题’ ,即可领取!
往期热文
量化研究:
1.python量化工具 |利用Python在策略中加入跟踪止盈止损模块(附代码)
2.TB量化兵器库 | 如何在TB中量化 “上升三角形” 和 “下降三角形”(附代码)?
量化教程:
1.初识 | 人生苦短,我用Python!
点击下方二维码即可关注‘牛角财经’
下标索引必须为正整数类型或逻辑类型_python量化基础 | 变量和简单的数据类型 零基础都可以看懂...