python量化投资基础知识_量化投资学习笔记07——python知识补漏

看《量化投资:以python为工具》这本书,第一部分是python的基础知识。这一部分略读了,只看我还不知道或不熟的。

定义复数

x = complex(2, 5) #2+5j

也可以直接定义

y = 3-6j

用id()可以得到变量的内存地址

z = 3-6j

print(id(y), id(z))

y和z的内存地址是一样的。

531269809744 531269809744

python可以为不可变对象分配固定的内存,减少内存占用。

当两个变量指向同一对象时,is比较结果为True。当两个变量指向的对象值相等时,==为True。

如果函数参数为可变对象,在函数内部改变此对象会影响函数外部。

def testChange(x, y):

x[0] = "A"

y = 7

x = ["a", "b", "c", "d"]

y = 6

testChange(x, y)

print(x, y)

使用个数不定的参数,可以提前打包,或者使用不定参数传递,方法是在参数前加*

def manyCan(*arg):

sum = 0

for i in arg:

sum = sum+i

return sum

print(manyCan(1,2,3))

匿名函数,无需使用def来定义的函数,使用lambda来定义。

# 匿名函数

greeting = lambda : print("hello")

greeting()

若字符串中包含单引号或双引号,要将整个字符串用三个引号包含。

文本分析时,应将字符串完全转换成小写再分析。

字典对象的keys()函数查看键值,values()函数返回值。

# 字典测试

dictest = {"High":5, "Low":1, "Close":3}

print(dictest)

for key in dictest.keys():

print(key)

print(dictest[key])

用del语句可以删除特定键及其对应值,用clear()方法则删除整个字典,返回空字典。

Python集合有set和frozenset两种,均不含重复元素,前者可变,后者不可变。

set用add()和remove()来增删成员。

使用arange创建array是不包含终点值的,要包含终点值,使用linspace。

不知道初始值时,用zeros(), ones()或empty()创建。

通过切片索引提取的array与原array共享内存,通过整型索引提取则不与原数组共享内存。

每个series对象实际上都由两个数组组成:index和values。

时间序列的index属性的取值为时间戳。用Timestamp()来将datetime转换为时间戳。由于其不接受列表等可迭代对象,用to_datetime()函数。

滞后操作:将t期数据换成t-a期数据。

超前操作:将t期数据换成t+a期数据。

标签索引与切片,用loc[行标签,列标签]

位置索引与切片,用iloc[行标签,列标签]

混合上述两者,用ix。(但python提示ix将被废弃)

我发文章的四个地方,欢迎大家在朋友圈等地方分享,欢迎点“在看”。

我的微信个人订阅号:赵瑜敏的口腔医学学习园地

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值