首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
代码优化
订阅
流浪的丶风
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
使用迭代器接收数据并自动停止
假设有一个 Redis 集合,里面有 N 条数据,你不停从里面lpop数据,直到某一条数据的值为'Stop'字符串为止(已知里面必有一条数据为'Stop'字符串,但其位置不知道)。 现在问题来了,如果 Redis 里面的数据非常多,已经超过了你的内存容量怎么办?数据全部放在da…
如何通过字符串导入 Python 模块
我们知道,这里的Test.middlewares.ExceptionRetryMiddleware实际上对应了根目录下面的Test文件夹里面的middlewares.py文件中的ExceptionRetryMiddleware类。那么 Scrapy 是如何根据这个字符串,导入这…
写了那么久的Python,你应该学会使用yield关键字了
写过一段时间代码的同学,应该对这一句话深有体会:程序的时间利用率和空间利用率往往是矛盾的,可以用时间换空间,可以用空间换时间,但很难同时提高一个程序的时间利用率和空间利用率。 但如果你尝试使用生成器来重构你的代码,也许你会发现,在一定程度上,你可以既提高时间利用率,又提高空间利…
使用 yield 压平多层嵌套字典列表混合数据
在上一篇文章里面,我们讲到了如何使用Python的yield关键字简化代码,压平多层嵌套字典的。 现在,请停下来,敲一敲代码,想想如何把处理列表的逻辑添加进去。 如果你使用return和递归,你可能确实需要这样写。 但如果你使用yield关键字,那么,你虽然也要修改代码,可是修…
一日一技:在 Python 中实现函数重载
假设你有一个函数connect,它有一个参数address,这个参数可能是一个字符串,也可能是一个元组。例如: 这种写法简单直接,但是如果参数的类型更多,那么你就需要写很长的 if-elif-elif-...-else。代码看起来就非常不美观。 学习过 Java 的同学,应该对…
业务复杂=if else?刚来的大神竟然用策略+工厂彻底干掉了他们!
对于业务开发来说,业务逻辑的复杂是必然的,随着业务发展,需求只会越来越复杂,为了考虑到各种各样的情况,代码中不可避免的会出现很多if-else。 一旦代码中if-else过多,就会大大的影响其可读性和可维护性。 首先可读性,不言而喻,过多的if-else代码和嵌套,会使阅读代…
为什么Python 3.6以后字典有序并且效率更高?
在Python 3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。 但是从Python 3.6开始,字典是变成有顺序的了。你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,…
从Python源代码里面证明你的猜想
运行以后发现,什么都没有打印出来,也就是说test()函数根本没有运行。 运行效果如下图所示。 所以你隐隐觉得,如果pool.map的第二个参数是空的可迭代对象,那么函数就不会运行。 (当然,使用过Python自带的map函数的同学肯定直接就知道这一点,不过本文依然使用它来做例…