Python 碎碎念 -- 不定期记录遇到的各种小问题(藤原豆腐坊自家用)
来源:互联网 发布:淘宝网折800 编辑:程序博客网 时间:2024/06/10 06:29
关于利用numpy模块使用矩阵做内积的用法.可能会在各种开源库里面遇到
"""Programmer : EOFDate : 2015.02.22file : numpy_T.pycode description : demo for hot to use numpy.array and it's T whichis in model @numpy"""import numpya = numpy.array([[1,2,3],[4,5,6],[7,8,9]])print "before a = a.T \n", aa = a.Tprint "after a = a.T \n", ab = numpy.array([1,2,3])ans = b.T.dot([1,2,3])print "b:", bprint "answer of b.T.dot([1,2,3])", ans
这些天也是堕落到shi的节奏啊...感觉都没怎么堆代码,一直被各种矩阵运算虐..
用Python写了一个二维矩阵初始化的时候遇到点"神奇的事情"
"""Programmer : EOFCode date : 2015.03.04Code file : multiply.pye-mail : jasonleaster@gmail.com"""a = [[0]*10]*10row = len(a)col = len(a[0])for i in range(0, row) : for j in range(0 ,col) : if i == j : a[i][j] = 10print ab = [[0 for i in range(0, 10)] for j in range(0, 10)]for i in range(0, len(b)) : for j in range(0, len(b)) : if i == j : b[i][j] = 5print b
对于两种不同初始生成一个二维矩阵的方法,有什么不同呢?
对于矩阵a,采用了这种形式
a = [[0]*10]*10
for循环尝试仅仅修改起对角线上的元素,但是最后输出的时候整个矩阵都是输出相同的值.OMG( ⊙ o ⊙ )
对于矩阵b则采用了下面这种初始化的方式.
b = [[0 for i in range(0, 10)] for j in range(0, 10)]
同样修改对角线上的值,能够满足我们的实际意图.
那么,问题来了,为什么第一种利用*运算符的方式不行呢?
这很可能是因为(用”可能”是因为没去看源码实现, 也没怎么找到这方面的资料)*运算符在这里只是不断的拷贝第一个元素的地址,使之形成一个矩阵.但是这个矩阵里面每个元素的地址都是同一个!!
但是第二种方式不同,第二种是迭代的,每次创建一个常量值作为元素.
此坑已填,来者注意~
放假了居然还会很不安, 惰性啊...
计划寒假要做好多好多事情的,很多都木有实现啊!!!
0 0
- Python 碎碎念 -- 不定期记录遇到的各种小问题(藤原豆腐坊自家用)
- The annotation of <<C++ primer>> {藤原豆腐坊自家用}
- java面试遇到的各种问题(不定期更新中~~)
- Python写小爬虫时遇到的问题记录
- Python遇到的问题记录!
- 小白的碎碎念
- 在Ubuntu Linux上面安装Android Studio遇到的各种小问题记录
- Ubuntu中遇到的各种小问题
- 个人记录:linux使用遇到的问题及解决方案 不定期总结
- android开发遇到的问题(不定期更新)
- 不定期收录遇到的正则问题
- 创建FTP遇到的问题,不定期更新
- Python 学习中遇到的各种问题
- Python import各种包遇到的问题
- 【记录】你可能会遇到的小问题
- 记录最近遇到的两个小问题
- 记录一下平时遇到的小问题
- 【烦人的小问题】自己各种遇到的问题,搜到答案就来这记录一份,也当做学习记忆
- Webkit的JIT文件描述
- 历届试题 翻硬币
- pat 1088
- POJ2965 The Pilots Brothers' refrigerator (精妙方法秒杀DFS BFS)
- 1007. Maximum Subsequence Sum (25)
- Python 碎碎念 -- 不定期记录遇到的各种小问题(藤原豆腐坊自家用)
- 非洲人的中国梦
- 【源码】c#编写的安卓客户端与Windows服务器程序进行网络通信
- POJ2891 Strange Way to Express Integers【一元线性同余方程组】
- memset函数
- android中BuildConfig.DEBUG的使用
- Android计时器TimerTask,Timer,Handler
- 【入门】寻找完全数 【循环】
- JQuery DataTable 结合SpringMVC+Spring Data JPA应用(二)