优化算法时间复杂度算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。减少冗余数据如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。合理使用copy与deepcopy对于dict和list等数据结构的对象,直接赋值使用
系统 2019-09-27 17:54:58 1897
使用beautifulsoup爬取小说,并整合到txt中。"""======================@Auther:CacheYu@Time:2019/9/16:16:09======================"""#-*-coding:utf-8-*-importurllib.requestimporturllib.errorimportbs4frombs4importBeautifulSoupdefreaddown(url):soup=B
系统 2019-09-27 17:54:27 1897
简单来说python的内存管理机制有三种1)引用计数2)垃圾回收3)内存池接下来我们来详细讲解这三种管理机制1,引用计数:引用计数是一种非常高效的内存管理手段,当一个pyhton对象被引用时其引用计数增加1,当其不再被引用时引用计数减1,当引用计数等于0的时候,对象就被删除了。2,垃圾回收(这是一个很重要知识点):①引用计数引用计数也是一种垃圾回收机制,而且是一种最直观,最简单的垃圾回收技术。在Python中每一个对象的核心就是一个结构体PyObject,
系统 2019-09-27 17:54:17 1897
如下所示:data={"北京":{"昌平":{"沙河":["oldboy","test"],"天通苑":["链接地产","我爱我家"]},"朝阳":{"望京":["奔驰","陌陌"],"国贸":["CICC","HP"],"东直门":["advent","飞信"]},"海淀":{}},"山东":{"德州":{},"青岛":{},"济南":{}},"广东":{"东莞":{},"常熟":{},"佛山":{}}}exit_flag=Falsewhilenotex
系统 2019-09-27 17:54:15 1897
一、简单使用复制代码代码如下:defTestLogBasic():importlogginglogging.basicConfig(filename='log.txt',filemode='a',level=logging.NOTSET,format='%(asctime)s-%(levelname)s:%(message)s')logging.debug('thisisamessage')logging.info("thisisainfo")loggin
系统 2019-09-27 17:54:02 1897
Python单例模式的两种实现方法方法一importthreadingclassSingleton(object):__instance=None__lock=threading.Lock()#usedtosynchronizecodedef__init__(self):"disablethe__init__method"@staticmethoddefgetInstance():ifnotSingleton.__instance:Singleton.__
系统 2019-09-27 17:54:01 1897
目录基础知识学习(MOOC嵩天+零散知识)无基础不能高楼,合抱之木,生于毫末,九层之台,起于累土1.1PythonMOOC练习31.2PythonMOOC练习41.3python中的随机函数random的用法示例1.4Python文本词频统计的编码问题-MOOC嵩天1.5Python中的复数和误区1.6Python计算圆周率的两种方法1.7Python实现七段数码管显示效果1.8Python实现科赫图形设计1.9Python基本统计值计算1.10Pytho
系统 2019-09-27 17:53:52 1897
前言正则表达式就是从字符串中发现规律,并通过“抽象”的符号表达出来。打个比方,对于2,5,10,17,26,37这样的数字序列,如何计算第7个值,肯定要先找该序列的规律,然后用n2+1这个表达式来描述其规律,进而得到第7个值为50。对于需要匹配的字符串来说,同样把发现规律作为第一步,本文主要使用正则表达式完成字符串的查询匹配、替换匹配和分割匹配。常用的正则符号在进入字符串的匹配之前,先来了解一下都有哪些常用的正则符号,见下表所示:如果读者能够比较熟练地掌握
系统 2019-09-27 17:52:54 1897
方法一,利用alias,自定指令的别名。当前默认python版本是2.7:同时,也支持python3:使用命令ls/usr/bin/python*查看python地址:使用命令aliaspython='/usr/bin/python3.5'更改默认python版本(设定别名):这个方法在断开之后就无效了。可以在~/.bashrc文件中加入alias命令使它永久生效。方法二,使用update-alternatives命令:输入命令:update-altern
系统 2019-09-27 17:52:47 1897
转https://www.cnblogs.com/ducklu/p/8943903.html1.遍历key值1>>>d={'Python':'astonishing','C++':'complicated','Java':'versatile'}2>>>forkeyind:3...print(key+':'+d[key])4...5Python:astonishing6C++:complicated7Java:versatile同理,可把下列代码的d改为d
系统 2019-09-27 17:52:37 1897