![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python学习笔记
文章平均质量分 55
由浅入深
技术猎人
多动笔应该改成多打字了!
展开
-
anaconda使用教程
设置默认环境linux很简单,打开~/.bashrc或~/.bash_profile,添加一句bash代码:conda activate your_env_name # "your_env_name"就是你的环境名windows下:右键Anaconda Prompt或Anaconda Powershell Prompt,点击属性(如果没有属性按钮点击打开文件位置,然后->右键->属性)在属性对话框里修改 [目标]选项%windir%\System32\cmd.exe “/K”.原创 2021-04-06 14:35:42 · 312 阅读 · 0 评论 -
python中list越界不报错的语法陷阱
正常list索引越界问题解释器会报错的, 但是这段代码不报错,会打印一个空列表出来。这个问题从出现到难以查找bug的原因是对python的内部运行原理不够深入了解,但我相信很多人和我一样把python当作开箱即用的编程语言,没有花很多时间去深入学习它,这也是python一个优点。其实这里是一个for循环运行机制导致的语法陷阱,所以要弄清楚这个问题的深层次原因我们要先弄清楚for循环的运行机制:【这几天我的一个程序出了一个不会报错的莫名其妙的bug。整个过程没有一个报错,list索引越界异常被完美隐藏。原创 2023-08-18 11:23:07 · 280 阅读 · 3 评论 -
python中for循环的运行机制
其中starred_list是指for语句后边括号内的表达式,他需要产生一个iterable对象,然后再用这个iterable对象创建一个iterator。再次强调尽量阅读官方资料,因为目前网上相关的教程大部分定义iterable对象的时候总是说实现了__iter__() 的对象,漏掉了__getitem__() ,这显然错误的,然后以诶传诶误人子弟。()去获取元素,当iterator所有元素都被迭代完会抛出StopIteration错误,for语句捕获到了这个错误就会结束循环。iterable对象。原创 2023-08-18 19:20:36 · 173 阅读 · 0 评论