python进阶16炫技巧

原则:可读性第一(效率固然重要,除非非常明显的效率差异,否则可读性优先)
学习炫技巧,更多为了读懂他人代码,自己开发过程中,相似代码量(可读性),建议使用通俗写法。反对为炫而炫。

python进阶15多继承与Mixin

Mixin解释

python进阶14变量作用域LEGB

作用域

python实战05文件路径(找不到文件)

开发时遇到问题,文件路径不正确,找不到文件等等,都是这一类问题.

python进阶13并发之九多进程和数据共享

使用进程,大概率出现情况是,想当然以为共享了,实际没共享。所以最终程序大概率卡死(部分逻辑没有数据进来,导致的业务逻辑性卡住,并非程序死锁)

python进阶12并发之八多线程与数据同步

python并发首选进程,但偶尔有场景进程无法搞定,比如有些变量是无法序列化的,就无法使用工具包manager()的工具类进行共享。如果自己实现新的共享方法,可能开发量较大,且质量难以保证。此时可考虑用线程处理,规避进程的变量共享难题,而且实际场景中,IO大概率都是瓶颈,所以使用线程其实也的确有些优势。个人而言,选择进程和线程较为重视的安全性,进程数据隔离较好,互不干扰。其次就是公用数据占比,如果大多数数据都需公用,那么线程也会比进程更佳,避免了进程较多的数据共享问题。
线程而言,难点数据一致性,

python进阶11并发之七多种并发方式的效率测试

测试map,apply_async,gevent协程爬虫
测试代码:网页爬虫

python进阶10并发之六并行化改造

图示变量含义说明:
1个大step中包含3个小step,大step内部的第一步,二步,三步存在依赖关系(就是内部保持顺序执行)
a1,b1,c1,表示子任务a的第一步,b的第一步,c的第一步.同理a2,表示子任务a的第二步。

python进阶09并发之五生产者消费者

这也是实际项目中使用较多的一种并发模式,用Queue(JoinableQueue)实现,是Python中最常用的方式(这里的queue特指multiprocess包下的queue,非queue.Queue)。

python进阶07并发之三其他问题

何时使用多进程(线程)

python进阶06并发之二技术点关键词

GIL,线程锁

python进阶05并发之一基本概念

大多编程语言,一旦涉及并发,都会比较复杂,知识点也较多(大多为历史问题,很多技术点现在非常少使用了,但语言层面也提供支持,对于这些冷门点,只需要知道即可,使用时也尽量避免使用这种冷门技术,除非和应用场景非常匹配)。实际使用过程中,只需要知道各名词以及大概功能,大多现用现查,毕竟涉及点太多,而且使用频率也并非很高,一般也就新系统研发会使用,后续维护时基本不会涉及太多。

python进阶04IO的同步异步,阻塞非阻塞

同步和异步

django入门进阶05快捷复习手册

建立项目

python进阶03UnboundLocalError和NameError错误

几个概念

django入门进阶04学习笔记04

第二章 视图层

django入门进阶03学习笔记03

第一章:模型层

django入门进阶02学习笔记02

基于教程,刘江的博客教程Django教程:https://www.liujiangblog.com/course/django/87
Django ORM、一对一、一对多、多对多、详解:https://www.cnblogs.com/pythonxiaohu/p/5814247.html

django入门进阶01学习笔记01

学习笔记,第一个Django应用

开源项目阅读04records

基础

开源项目阅读03tablib

代码结构合理,支持多种数据格式,通过定义”内部格式”(row,dataset,databook)实现了多种格式的导入和导出。
功能角度类似pandas,也是管理多维表的,相对轻量级一些。这个真的很简单,大概看一下吧

开源项目阅读02requests

最大收获在于代码可读性切分,以及变量命名的合理。
需求驱动的模块划分:一般是有公用方法才提出独立func,没有的话就大段代码堆积,除非非常长的代码,影响阅读效果,才会考虑切分。
可读性驱动的模块划分:request更多偏向于“注释型切分”,按照功能角色进行切分,哪怕只有几行代码,如果是独立小block,也会抽取出独立函数,通过函数名标识代码块功能,所以代码即使不看注释也很容易读懂(当然,request模块本身代码注释也很完善)。

开源项目阅读01cpythonDemo

beer

python进阶02yield

yield关键字之前见过,也能读懂,但开发时也不大敢使用,感觉理解还是不够充分。刚好项目代码中有涉及,顺便再学习学习。
在理解yield之前,

开源项目阅读系列

现状与不足

django入门进阶12信号

看起来简单,用起来简单。理解起来则未必容易。上学那会这一块就没整明白,这两天又查了下资料,算是基本弄懂了。
为何难以理解?个人感觉起名占了很大一部分,如果signal命名为“观察者”,“监控者”,“盯梢者”,就容易理解多了。其本质就是一种典型观察者模式。命名为信号,第一感觉是”信号量“类似的东西。

python进阶01偏函数

定义:偏函数的第二个部分(可变参数),按原有函数的参数顺序进行补充,参数将作用在原函数上,最后偏函数返回一个新函数(类似于,装饰器decorator,对于函数进行二次包装,产生特殊效果;但又不同于装饰器,偏函数产生了一个新函数,而装饰器,可改变被装饰函数的函数入口地址也可以不影响原函数)

python入门06标准库实例教程学习笔记

文本处理

python实战04常见坑

何谓坑:凡是和大多数人的直观理解不一致的,都可称之为“坑”

python实战02异常报错

百度自然语言处理报错:UnicodeEncodeError: ‘gbk’ codec can’t encode character ‘\U0001f602’ in posit

python入门02简明python教程笔记

python入门01廖雪峰python教程笔记

高级特性

项目实战05大客户定制相关技术

基于公版,对我司大客户进行定制版本的相关开发。

数据库04sqlite转mysql

基本思路:sqlite导出sql保存到mysql

rabbitMQ入门

消息队列

数据库03mongodb占用磁盘空间过大

何为过大:mongodump之前2G,导入后变成15G,大约8倍.
原因:如果mongo版本小于3,则正常,mongo请升级到3.0版本上,目前3.6.7较稳定版

java_spring的ioc有什么优点

有很多关于ioc优点说明,比如有如下不同的说法:
01,IoC最原初的目的就是充分利用OO的多态性,使得通过配置文件而不是在代码里硬编码(hardcode)的方式来实例化对象和装配对象图,这样就有了为不同的客户场景服务的灵活性(不同的客户通过配置文件使用不同的子类)。IoC本质上和插件化代码的思路很接近举例来说,软件公司只需要维护一套类库,然后通过使用配置文件装配对象图的方式为不同的客户定制不同版本的软件。这些软件可以在功能上、界面上大相径庭,但是区别只在于配置文件
02,ioc的思想最核心的地方在于,资源不由使用资源的双方管理,而由不使用资源的第三方管理,这可以带来很多好处。第一,资源集中管理,实现资源的可配置和易管理。第二,降低了使用资源双方的依赖程度,也就是我们说的耦合度。

数据库02mongodb异常错误

mongo报错WiredTiger.wt, connection: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted

数据库05redis常用命令整理

redis启动

项目实战04请求幂等性

接口调用存在的问题

项目实战03第三方接口对接之注意事项

近期和p2p公司合作进行闲置资金的货币基金购买。
核心功能自然是原有的网上交易核心service层,之前的service层服务的是ctrl层,现在ctrl层变成了第三方接口,而非常规的网页的ctrl层,简单来说就是重写ctrl层,返回json而非网页。

项目实战02微信支付宝服务号对接

微信公众号,支付宝服务号对接资料现在已经很多了。但当时资料很少的。
微信公众号是前辈开发的,我是进行二次开发。第一代开发主要集中在普通基金净值查询,不需要登录。后来微信提供了oauth2的认证,支持公众号提取到用户的更详细的信息,就可以通过公众号和用户账号建立绑定关系,从而实现用户查询资产,以及通过菜单中的网页链接登录h5形式的app,进行基金交易。

项目实战01网上交易和网站

网站相关技术点简单说明

http认证鉴权04CSRF跨站请求伪造

攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。 如下:其中Web A为存在CSRF漏洞的网站,Web B为攻击者构建的恶意网站,User C为Web A网站的合法用户

http认证鉴权03OAuth2入门

OAuth(Open Authorization,开放授权)是为用户资源的授权定义了一个安全、开放及简单的标准,第三方无需知道用户的账号及密码,就可获取到用户的授权信息。
OAuth在”客户端”与”服务提供商”之间,设置了一个授权层,”客户端”不能直接登录”服务提供商”,只能登录授权层,以此将用户与客户端区分开 来,”客户端”登录授权层是使用令牌(token),”客户端”登录授权层以后,”服务提供商”根据令牌的权限范围和有效期,向”客户端”开放用户储存的资料

http认证鉴权02CAS和SSO(单点登录)

单点登录( Single Sign-On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要 登录一次就可以访问所有相互信任的应用系统

http认证鉴权01基本认证和摘要认证

基本认证与摘要认证用于在HTTP报文交互中,服务端确认客户端身份。

python入门05数据可视化

百度搜索:
python特征工程,绘图
python特征工程 数据可视化

python入门04map,numpy,pandas速查

Map操作

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×