摘要: 安装和配置(以CentOS Linux环境为例)。 Linux下有一个MySQL的分支版本,名为MariaDB,它由MySQL的一些原始开发者开发,有商业支持,旨在继续保持MySQL数据库在GNU GPL下开源(因为大家担心MySQL被甲骨文收购后会不再开源)。如果决定要直接使用MariaDB作为M 阅读全文
posted @ 2019-07-01 10:44 一兀 阅读(312) 评论(0) 推荐(0)
摘要: Python中实现并发编程的三种方案:多线程、多进程和异步I/O。并发编程的好处在于可以提升程序的执行效率以及改善用户体验;坏处在于并发的程序不容易开发和调试,同时对其他程序来说它并不友好。 多线程:Python中提供了Thread类并辅以Lock、Condition、Event、Semaphore 阅读全文
posted @ 2019-06-29 22:59 一兀 阅读(1222) 评论(0) 推荐(0)
摘要: 三大支柱:封装、继承、多态 例子:工资结算系统。 """ 月薪结算系统 - 部门经理每月15000 程序员每小时200 销售员1800底薪加销售额5%提成 """ from abc import ABCMeta, abstractmethod class Employee(metaclass=ABC 阅读全文
posted @ 2019-06-28 17:32 一兀 阅读(335) 评论(0) 推荐(0)
摘要: 常用算法: 穷举法 - 又称为暴力破解法,对所有的可能性进行验证,直到找到正确答案。 贪婪法 - 在对问题求解时,总是做出在当前看来 最好的选择,不追求最优解,快速找到满意解。 分治法 - 把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题,直到可以直接求解的程度,最后将 阅读全文
posted @ 2019-06-28 13:04 一兀 阅读(618) 评论(0) 推荐(0)
摘要: 算法:解决问题的方法和步骤 评价算法的好坏:渐近时间复杂度和渐近空间复杂度。 渐近时间复杂度的大O标记: - 常量时间复杂度 - 布隆过滤器 / 哈希存储 - 对数时间复杂度 - 折半查找(二分查找) - 线性时间复杂度 - 顺序查找 / 桶排序 - 对数线性时间复杂度 - 高级排序算法(归并排序、 阅读全文
posted @ 2019-06-28 00:18 一兀 阅读(646) 评论(0) 推荐(0)
摘要: 在即时通信软件如此发达的今天,电子邮件仍然是互联网上使用最为广泛的应用之一,公司向应聘者发出录用通知、网站向用户发送一个激活账号的链接、银行向客户推广它们的理财产品等几乎都是通过电子邮件来完成的,而这些任务应该都是由程序自动完成的。 就像我们可以用HTTP(超文本传输协议)来访问一个网站一样,发送邮 阅读全文
posted @ 2019-06-27 15:50 一兀 阅读(559) 评论(0) 推荐(0)
摘要: 字典是“键值对”的无序可变序列,字典中的每个元素都是一个“键值对”,包含:“键对象”和“值对象”。可以通过“键对象”实现快速获取、删除、更新对应的“值对象”。列表中我们通过“下标数字”找到对应的对象。字典中通过“键对象”找到对应的“值对象”。“键”是任意的不可变数据,比如:整数、浮点数、字符串、元组 阅读全文
posted @ 2019-06-27 15:50 一兀 阅读(221) 评论(0) 推荐(0)
摘要: 元组 tuple 列表属于可变序列,可以任意修改列表中的元素。元组属于不可变序列,不能修改元组中的元素。 因此,元组没有增加元素、修改元素、删除元素相关的方法。 因此,我们只需要学习元组的创建和删除,元组中元素的访问和计数即可。元组支持如下操作:1.索引访问2.切片操作3.连接操作4.成员关系操作5 阅读全文
posted @ 2019-06-22 23:13 一兀 阅读(484) 评论(0) 推荐(0)
摘要: 1.使用 @property 来包装getter和setter方法,让访问属性安全、方便 例子: from math import sqrt class Triangle(object): def __init__(self, a, b, c): self._a = a self._b = b se 阅读全文
posted @ 2019-06-22 22:10 一兀 阅读(262) 评论(0) 推荐(0)