Python
叶赫那拉坤
这个作者很懒,什么都没留下…
展开
-
Python中的变量引用对象需注意的几点
普通引用: Python中,变量的作用仅仅是一个标识,只有赋值后才被创建,它可以引用任何类型的对象,而且在引用之前必须赋值。赋值后的变量指向响应的对象,拥有该对象的空间。类型属于对象,但是不是变量。a = 3a = "science" 上述代码说明数值3和字符串“science”分别是两种对象,初始变量a赋值对象3被创建,变量a指向对象3的内存空间,之后变原创 2016-10-11 18:33:04 · 1245 阅读 · 0 评论 -
算法:Python实现dijkstra最短路由
Dijkstra算法:又称迪杰斯特拉算法,迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题。迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止百度百科。 注意:Dijkstra算法不能处理包含负边的图# dijkstra算法实现,有向图和路由的源点作为函数的输入,最原创 2016-12-28 09:47:17 · 21818 阅读 · 7 评论 -
语法:Python中的修饰器@
在阅读源码时纠结于python中修饰器的原理,在推酷上发现一篇文章感觉讲的不错:python修饰器。还有一篇博客讲的挺好:Decorator深入详解,如果需要更为全面的了解,只能祭出我看到的这篇了,特别的靠谱。decorator全面讲解个人感觉使用修饰器由两种情况:一种是功能代码完成后需要添加辅助性功能(例如性能测试、日志记录、调试信息)时用到修饰器; 一种是在软件设计阶段根据实际功能需求添加修原创 2016-11-21 14:33:40 · 1041 阅读 · 0 评论 -
语法:Python中的引用和副本
实践才是最好的老师,对于程序员来说可能更为重要。首先列出在编码中遇到的问题,给出一个列表nums=[1,2,3,3,3,4],要求将这个列表中值为3的元素删除,计算剩下列表的长度。题目并不难,一个思想就是遍历list元素,一旦该元素属于这个列表,从该链表中删除,因为链表是可覆盖对象,遍历完成后计算链表的长度即可。但是我在编码中发现了一个问题。nums=[1,2,3,3,3,4]for i in原创 2016-11-26 21:16:54 · 3855 阅读 · 0 评论 -
算法:Python实现中国剩余定理
中国剩余定理(Chinese Remainder Theorem-CRT):又称孙子定理,是数论中的一个定理。即如果一个人知道了一个数n被多个整数相除得到的余数,当这些除数两两互质的情况下,这个人就可以唯一的确定被这些个整数乘积除n所得的余数。 维基百科上wiki:The Chinese remainder theorem is a theorem of number theory, which原创 2016-12-08 09:12:20 · 5919 阅读 · 0 评论 -
算法:Python递归实现走迷宫
什么是递归?简单地理解就是函数调用自身的过程就称之为递归。什么时候用到递归?如果一个问题可以表示为更小规模的迭代运算,就可以使用递归算法。迷宫问题:一个由0或1构成的二维数组中,假设1是可以移动到的点,0是不能移动到的点,如何从数组中间一个值为1的点出发,每一只能朝上下左右四个方向移动一个单位,当移动到二维数组的边缘,即可得到问题的解,类似的问题都可以称为迷宫问题。 在python中可以使用l原创 2016-12-07 16:14:02 · 16054 阅读 · 2 评论 -
语法:Python中的可覆盖对象与不可覆盖对象
Python中的可覆盖对象与不可覆盖对象python中的对象按照覆盖方式可以分为两类:可覆盖对象和不可覆盖对象:可覆盖对象:list,dictionary不可覆盖对象:int,string,float,tuple可覆盖对象一旦创建后还可以改变,响应的指向同一个对象引用的变量的内容随之改变;不可覆盖对象一旦创建后就不可以改变,这儿作了详细的解释。代码实例对于可覆盖对象@breakingcoder原创 2016-11-12 10:29:52 · 2093 阅读 · 0 评论 -
应用:Python实现简单聊天程序
需求:SCIENCE 和MOOD两个人软件专业出身,厌倦了大众化的聊天软件,想着自己开发一款简易的聊天软件,满足他们的个性化需求,又不失“专业水准”,Talk is easy, try to code it. 技术:socket,详细了解请参考推酷:python socket 语言:python尽管socket区分服务器和客户端,但是在聊天程序中两者是平等的关系,都是客户端程序。 Server原创 2016-11-21 19:21:21 · 9292 阅读 · 1 评论 -
算法:Python中的斐波那契数列实现
斐波那契数列的概念: 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……摘自百度百科 Python代码实现:def fib(n): if n<=0: return Non原创 2016-11-21 15:59:29 · 855 阅读 · 0 评论 -
语法:Python中的logging模块
新年第一天,祝大家元旦快乐!偷个小懒,怒转一篇优质好文。编程时为了方便追踪调试程序中的bug,我们通常借助于日志分析来快速定位程序出现的错误,python作为最活跃的一门高级编程语言(之一),自然有相应的logging module。 当然精确无误的使用logging只能去官网了HOWTOs文档了,如果不想看英文又想快速学习基础用法,那只能是这篇快速实战教程了(个人理解),再此谢过推酷Pytho转载 2017-01-01 16:08:43 · 438 阅读 · 0 评论