一心想学习算法,很少去真正静下心来去研究,前几天趁着周末去了解了最短路径的资料,用python写了一个最短路径算法。算法是基于带权无向图去寻找两个点之间的最短路径,数据存储用邻接矩阵记录。首先画出一幅无向图如下,标出各个节点之间的权值。其中对应索引:A――>0B――>1C――>2D――>3E――>4F――>5G――>6邻接矩阵表示无向图:算法思想是通过Dijkstra算法结合自身想法实现的。大致思路是:从起始点开始,搜索周围的路径,记录每个点到起始点的权值
系统 2019-09-27 17:51:19 2361
首先是数据源:#需要求加权平均值的数据列表elements=[]#对应的权值列表weights=[]使用numpy直接求:importnumpyasnpnp.average(elements,weights=weights)附纯python写法:#不使用numpy写法1round(sum([elements[i]*weights[i]foriinrange(n)])/sum(weights),1)#不使用numpy写法2round(sum([j[0]*j[
系统 2019-09-27 17:50:32 2361
关于Python3进度打卡文章目录关于Python3进度打卡第一天——9.4一、安装环境变量二、关于编辑三、基本介绍第二天——9.5一、基本数据类型二、基本语句三、编程实践第三天——9.7一、制作贪吃蛇游戏的准备二、需求及算法分析三、代码实现四、一些全局参数的初始化五、关于贪吃蛇及食物的位置六、关于贪吃蛇的上下左右移动七、判断能否迟到食物八、绘制贪吃蛇、食物的函数九、贪吃蛇的逻辑调用十、主逻辑层判断游戏是否结束第一天——9.4一、安装环境变量1、首先访问h
系统 2019-09-27 17:50:31 2361
如下所示:#coding:utf-8importosimportpsutilimporttimedefwrite_pid():pid=os.getpid()fp=open("pid.log",'w')fp.write(str(pid))fp.close()defread_pid():ifos.path.exists("pid.log"):fp=open("pid.log",'r')pid=fp.read()fp.close()returnpidelse:r
系统 2019-09-27 17:48:34 2361
Python的交互式命令行可通过启动文件来配置。当Python启动时,会查找环境变量PYTHONSTARTUP,并且执行该变量中所指定文件里的程序代码。该指定文件名称以及地址可以是随意的。按Tab键时会自动补全内容和命令历史。这对命令行的有效增强,而这些工具则是基于readline模块实现的(这需要readline程序库辅助实现)。此处为大家举一个简单的启动脚本文件例子,它为python命令行添加了按键自动补全内容和历史命令功能。[python@pytho
系统 2019-09-27 17:48:02 2361
工作中,工具用到了pythonQt5,涉及到了按钮颜色,这里就做个总结。也顺便给要用这块的同仁抛出来一个砖头,把大牛引出来做个指导。一般设置按钮的颜色有三种表达:如下所示:具体的怎么使用,估计要看一下用例就清楚了。QPushButtonbutton1,button2,button3;button1.setStyleSheet("background-color:red");button2.setStyleSheet("background-color:#f
系统 2019-09-27 17:47:43 2361
一个功能的实现,可以用多种语句来实现,比如说:while语句、for语句、生成器、列表推导、内置函数等实现,然而他们的效率并不一样。写了一个小程序来测试它们执行的效率。测试内容:将一个数字大小为20万的数字,依次取绝对值,放到列表中,测试重复1千次.测试程序:复制代码代码如下:importtime,sysreps=1000#测试重复次数nums=200000#测试时数字大小deftester(func,*args):#总体测试函数startTime=tim
系统 2019-09-27 17:45:55 2361
UDP套接字是可以使用connect系统调用连接到指定的地址的。从此以后,这个套接字只会接收来自这个地址的数据,而且可以使用send系统调用直接发数据而不用指定地址。可以再次调用connect来连接到别的地方。但是在Python里,一旦调用connect之后,就再也回不到最初的能够接收从任意地址来的数据的状态了!这是Python的API限制,没办法给connect方法传递到AF_UNSPEC地址簇(在C代码里写死了的)。C里边就可以做到的(代码来自这里):
系统 2019-09-27 17:38:23 2361
在前面的章节我们已经了解了面向对象的入门知识,知道了如何定义类,如何创建对象以及如何给对象发消息。为了能够更好的使用面向对象编程思想进行程序开发,我们还需要对Python中的面向对象编程进行更为深入的了解。@property装饰器之前我们讨论过Python中属性和方法访问权限的问题,虽然我们不建议将属性设置为私有的,但是如果直接将属性暴露给外界也是有问题的,比如我们没有办法检查赋给属性的值是否有效。我们之前的建议是将属性命名以单下划线开头,通过这种方式来暗
系统 2019-09-27 17:37:57 2361
Vista之家(www.vista123.com)隆重推荐大家使用HOSTS反黑文件(感谢电脑报黑榜栏目:http://www.cpcw.com/web/f/host.html),首先,大家先来了解它的用途。HOSTS反黑文件最新版本更新时间:2008年6月23日(6.20版本)HOSTS反黑文件的用途:用HOSTS文件来进行过滤恶意网站列表,几乎不占任何的Windows系统资源,利用Windows(包括Vista)自身的设置,来屏蔽恶意网站,效率超高,而
系统 2019-08-29 23:22:34 2361