Python debug —— 逻辑错误(三)
来源:互联网 发布:淘宝店可以转天猫吗 编辑:程序博客网 时间:2024/06/17 21:50
(0)为什么
print foo()
会输出None
,可见foo()
或者没有返回值,或者返回的对象为空;(1)迭代 zip(x, y) 时,每次取出的元素是二元元组(tuple),该二元元组由 x,y 的对应位上的元素组成;
list.append() 的参数为 list comprehension
此时添加的是一个 list,而不是逐元素地添加;
>>> l = []>>> l.append([x for x in range(10) if x % 2==0])>>> l[[0, 2, 4, 6, 8]]>>> l.append((x for x in range(10) if x % 2==0))[[0, 2, 4, 6, 8], <generator object <genexpr> at 0x02F05BE8>] # 添加进去的是 generator
和 list comprehension 相搭配的是 list.extend();
range 左边界小于右边界
>>> range(2, 1)range(2, 1)
最危险的莫过于不直接报错,
(1)索引时会报错,因其区间长度为 0
>>> range(2, 1)[0]IndexError: range object index out of range
(2)迭代时,不会进入循环体:
>>> for i in range(2, 1): print(i)>>>
三维数组(ndarray)的访问
X[:, :, 0] 与 X[0, :, :]
>> X = np.random.randn(2, 3, 2)array([[[ 0.26137804, 0.46003339], [ 0.94744861, 0.38409255], [ 0.78010047, 1.44591233]], [[-0.25581073, -0.17355291], [ 1.81726758, 2.07810646], [ 0.88703373, -0.95118625]]])>> X[:, :, 0]array([[ 0.26137804, 0.94744861, 0.78010047], [-0.25581073, 1.81726758, 0.88703373]])>> X[0, :, :]array([[ 0.26137804, 0.46003339], [ 0.94744861, 0.38409255], [ 0.78010047, 1.44591233]])
连等号
>> y = np.zeros((10, 1))[5] = 1
y
直接等于1
,而不会是别的。
- 表达式本身没有返回值(不像C/C++返回左值),
- 连等号的含义是多变量指向同一内存对象,
- np.zeros((10, 1))[5] 指向1
- y 也指向 1
0 0
- Python debug —— 逻辑错误(三)
- Python debug —— 逻辑错误 (二)
- Python debug —— 逻辑错误(四)
- C 语言 —— debug(逻辑错误)
- Python——debug
- Python——debug(二)
- [Debug]Native Exception学习(三)——signal
- 自然语言理解(三)—— 逻辑形式语言
- 面向对象——意图与逻辑(三)
- 程序设计——意图与逻辑 (三)
- 机器学习练习(三)——逻辑回归
- 逻辑回归(三)
- Python学习笔记(3)——逻辑关系
- Python基础(四)—逻辑行和物理行
- python 调试时的逻辑错误
- Python学习笔记三:逻辑操作符
- 意图与逻辑 —— Python
- Python学习笔记 —— 逻辑语句
- 关于BigInteger类
- form表单中onclick事件和onsubmit事件的执行顺序
- 【总结】String in Java
- c++作业2---项目二到四
- GPU硬件加速
- Python debug —— 逻辑错误(三)
- Perfect Cubes[打表]
- JVM(三)--JVM内存管理和JVM垃圾回收
- iOS提取本地通讯录数据
- 深入理解 Python
- google guava 测试
- Android手机 Fildder真机抓包
- java 类加载器和类加载方式
- Android加载一张3.4MB的图片,不出现OOM