Life is short!Python 作为一门强大易用的语言,内置了多种数据类型,有基本类型:int、long、float、string等,有集合类型:tuple、list、set、dict等,除此之外标准库还自带了多种数据结构:OrderedDict、deque、heapq、bisect等。数据类型的知识点...
Read More引子本文针对 Python 2.7。Python 中的一切都是对象,包括类也是对象。大家有没有好奇,那类的类是什么呢?下面我们通过代码来去探索。a = 1a.__class__ # inttype(a) # intclass A(object): passA.__class__ # typeA.__c...
Read Morekotlin 是 JetBrains 公司推出的一个语言,基于 JVM,100% 与 Java 兼容,主要面向 Android 开发,新版可以编译为 JavaScript,可以运行在 Node.js 或浏览器中。相对于 Java 语言,加入了很多语法糖和特性,使得很多场景下的代码得到极大的简化,比 Java 简洁很多。
Read More问题描述在维护旧系统时,碰到了一段使用 URLClassLoader 加载 url 的 jar,然后执行某个类的静态方法。远端更新了对应 url 的 jar,发现执行结果不符合预期,排查了很久未发现问题。最后,猜测是 URLClassLoader 并未重新加载 url 上的 jar,导致执行的还是旧的逻辑。下面就...
Read MorePython 语言非常强大,但是也有一些疑惑的地方,非常容易困扰新手,甚至老手。所以,对一些常见易错的地方进行总结学习非常有必要。本文大部分从参考资料中收集,也有从笔者自身实践中发现的问题,希望可以在大家碰到类似问题的时候可以从容对待。
Read More安装Maven 是一个 Java 的工程管理工具,只依赖 Java JDK 1.5 版本以上即可,依赖环境变量 JAVA_HOME。Maven 的安装路径一般也会设置一个环境变量 M2_HOME,直接下载官方编译好的 Binary Archive,解压后配置即可。# init java & maven e...
Read More背景传统的 RDBMS 大多使用的行存储方式,现如今随着大数据技术的发展,对于存储的要求越来越高,列存储相对有自己明显的优势:列数据相对来说比较类似,压缩比更高;一般的查询只涉及几列,列存储的查询性能也更高;可以方便地新增列等。在某些场景下,选择列存储是非常不错的选择,从节省存储的角度来说就非常吸引人了。目前,比...
Read More简介我们先来看看这个概念:技术债务是由 Ward Cunningham 首次提出的,是一个术语,指的是开发团队在设计或架构选型时从短期效应的角度选择了一个易于实现的方案,但从长远来看,这种方案会带来更消极的影响,亦即开发团队所欠的债务。这个债务和金融债务非常类似,如果这个项目一直持续下去,这种债务会不断地产生,如...
Read More简介MongoDB Shard Cluster 是 MongoDB 的集群解决方案,将数据进行了拆分,分布在多个 shard 节点上。Shard key 是决定数据分布的关键配置,一旦创建后是无法修改的,修改方式只能重新建表并灌库,所以选择 shard key 需要提前规划好。Shard key 分为两种:默认是...
Read MorePython 内置了一个线程池的实现,隐藏在 multiprocessing.dummy 这个包中。
Read MoreWindows 下简陋的记事本非常难用,对于程序员来说一些特殊格式会导致一些奇怪的问题。目前大多数人都会使用记事本的替代品,我个人比较喜欢 Notepad++,一款非常好用的记事本。
Read MoreVagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,是程序员的虚拟机,有助于中开发环境模拟真实环境,使用相同的系统和干净的环境。
Read More本文主要是介绍 Python 中的 yield 关键字的用法,yield 的基本用法是用来产生生成器(generator),yield 最大的特点在于上下文切换。下面通过一些简单的例子来解释这两种用法。
Read More简介Python 的修饰器(Decorator)是一种非常便捷的修改函数的方式,不影响原函数的定义而对函数进行一些额外的封装,有点类似 AOP(Aspect Oriented Programming),增加一些小功能却不侵入原有代码,非常简洁强大。在实际使用中,常见的使用场景有日志、异常处理、计时和权限等,在很多...
Read More前言Python 是一门简单强大的编程语言,非常灵活,可以极大地提升程序员的编程效率。但是,Python 本身的灵活带来了运行效率低,内存占用相对较大的问题,这限制了 Python 在某些场景下的应用。Python 的官方实现 CPython 本身提供了一个扩展机制,可以方便地编写扩展来提升效率,本文将通过一个示...
Read MorePython 有个非常好用的包管理工具——pip,在国内的网络环境下,使用官方的 pypi速度有点慢,而且不稳定,可以考虑使用豆瓣的 pypi,这是在可以连接外网的情况下我们可以选择比较容易的使用 pip。
Read More简介Python 是一门常用的脚本语言,做一些日常小功能的开发和文本处理之类的事情非常方便,大多数人不以 Python 为主语言,所以导致大家并不是十分重视 Python,在日常的 Python 代码编写中,书写受主语言(可能是 C/C++、Java 等语言)的影响,导致经常会写出一些反 Pythonic 的代码...
Read More最近在多看上看你了一本正则表达式的书《学习正则表达式》(英文:Introducing Regular Expressions), 让自己对正则表达式的特性有所了解,中文翻译主要是术语名词比较少见,本文会将术语都采用中英文。
Read More