- 军军小站|张军博客
拥有Python标签的文章
Python

LeetCode 腾讯50题Python实现之《二叉树的最大深度》

题目给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,15,7],3/920/157返回它的最大深度3。思路BFS广度优先搜索,使用双端队列deque(因为性能比另外两种Queue好得多),在大循环内对二叉树的每个层做一次遍历,range(len(queue))使只遍历当前的层,每次大循环ans加1。由于每个节点仅访问一次,所以时间

系统 2019-09-27 17:56:23 1818

Python

用python做游戏的细节详解

PyGame是一个Python的库,能够让你更容易的写出一个游戏。它提供的功能包括图片处理和声音重放的功能,并且它们能很容易的整合进你的游戏里。去官网点击这里下载适合你的PyGame安装包。大家可以参阅:Python中pygame安装方法图文详解我们就拿打飞机来做个例子1.创建游戏框架以及游戏背景#这个模块放一些常用的工具和基础类和精灵类#在其他模块调用importpygameimportrandom#设置游戏屏幕大小这是一个常量SCREEN_RECT=p

系统 2019-09-27 17:56:17 1818

Python

详解Python self 参数

1、概述1.1场景我们在使用Python中的方法method时,经常会看到参数中带有self,但是我们也没对这个参数进行赋值,那么这个参数到底是啥意思呢?2、知识点2.1成员函数(m)和普通方法(f)Python中的"类方法"必须有一个额外的第一个参数名称(名称任意,不过推荐self),而"普通方法"则不需要。m、f、c都是代码自动提示时的左边字母(method、function、class)#-*-coding:utf-8-*-classTest(obj

系统 2019-09-27 17:56:05 1818

Python

Python使用字典实现的简单记事本功能示例

本文实例讲述了Python使用字典实现的简单记事本功能。分享给大家供大家参考,具体如下:fromtimeimportsleep,strftimeuser="Cytus"calendar={}defwelcome():print"Welcometousethiscalendar.%s"%userprint"Calendarisopening."sleep(1)printstrftime("%A%B%d%Y")printstrftime("%H:%M:%S")

系统 2019-09-27 17:56:03 1818

Python

利用Python判定IP地址合法性的三种方法

在帮朋友解决这个问题后,随便记录一下这三种方法:第一种方法:使用正则表达式:因为当时的要求是判定10.0.0.1到10.255.255.255,原理其实是一样。这里简单回顾一下正则表达式模式的内容:常见的如:\d可以表示0~9的任意一个数字字符而\D是匹配一个非数字字符等价于^^是匹配字符串的开头,但放在[]中表示匹配不在[]中的字符$是匹配字符串的末尾.是匹配除了换行符任意字符{}表示重复几次,例如:^a{2,4}$aa,aaa或aaaa|的是或的意思[

系统 2019-09-27 17:55:59 1818

Python

解决python super()调用多重继承函数的问题

当类间继承关系很简单时,super()的使用很简单。classA(object):def__init__(self):print('a')classB(A):def__init__(self):super(B,self).__init__()print('b')b=B()输出结果:ab当一个类继承多个类时,问题就复杂起来了,请看下例:classA(object):def__init__(self):print('a')classB(object):def_

系统 2019-09-27 17:55:42 1818

Python

Python - 节点

在有些情况下,存储数据的内存分配不能位于连续的内存块中。所以我们接受指针的帮助,其中数据和数据元素的下一个位置的地址也被存储。所以我们从当前数据元素的值中知道下一个数据元素的地址。通常这样的结构被称为指针。但在Python中,我们将它们称为节点。节点是各种其他数据结构链接列表和发can可以在python中处理的基础。创建节点这些节点是通过实现一个将保存指针和数据元素的类来创建的。在下面的例子中,我们创建了一个名为daynames的类来保存星期几的名称。ne

系统 2019-09-27 17:55:33 1818

Python

python高级编程——锁

锁在使用用的过程中需要导入threading模块的Lock类使用锁:当多个线程几乎同时修改某一个共享数据的时候,需要进行同步控制线程同步能够保证多个线程安全访问竞争资源,最简单的同步机制是引入互斥锁。互斥锁为资源引入一个状态:锁定/非锁定。锁的语法创建锁、锁定锁、释放锁fromthreadingimportLock#创建锁mutex=Lock()#获取锁(上锁)mutex.acquire()#释放锁(解锁)mutex.release()在锁定锁的过程中ac

系统 2019-09-27 17:55:04 1818

Python

Python函数编程——函数简介

Python函数编程——函数简介引子现在老板让你写一个监控程序,24小时全年无休的监控你们公司网站服务器的系统状况,当cpu\memory\disk等指标的使用量超过阀值时即发邮件报警,你掏空了所有的知识量,写出了以下代码whileTrue:ifcpu利用率>90%:#发送邮件提醒连接邮箱服务器发送邮件关闭连接if硬盘使用空间>90%:#发送邮件提醒连接邮箱服务器发送邮件关闭连接if内存占用>80%:#发送邮件提醒连接邮箱服务器发送邮件关闭连接上面的代码实

系统 2019-09-27 17:55:03 1818

Python

113 Python程序中的进程操作-进程同步

目录一、进程同步二、为什么需要进程同步三、Python中实现进程同步四、多进程模拟同时抢票4.1通过锁控制进程资源访问总结尽管并发编程让我们能更加充分的利用IO资源,但是也给我们带来了新的问题:当多个进程使用同一份数据资源的时候,就会引发数据安全或顺序混乱问题。一、进程同步多个进程同时执行,为了相互制约各进程对资源的访问,使得各个进程的执行相互同步。在我的理解里,进程同步也算是进程间通讯(ipc)的一种手段。二、为什么需要进程同步多进程会引发抢占资源的问题

系统 2019-09-27 17:54:58 1818

Python

python下numpy的基础使用

#!/usr/bin/python#coding:utf-8importnumpyasnpa=np.array([1,2,3])b=np.array([[1,2,3],[4,5,6],[7,8,9]])#shape是维度,dtype是元素的类型printa.shapeprinta.dtype#使用函数生成等差数列数组x1=np.arange(1,11,2)x2=np.linspace(1,9,5)printx1,x2#求数组中的最大值和最小值printnp

系统 2019-09-27 17:54:45 1818

Python

聊聊 Python 的单元测试框架(二):nose 和它的继任者 nose2

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article一、nosenose是一个第三方单元测试框架,它完全兼容unittest,并且号称是一个更好用的测试框架。那么nose除了具备unittest的所有功能外,还具有哪些优势呢?1.1用例编写用例的编写方式除了编写继承于unittest.TestCase的测试类外,还可以编

系统 2019-09-27 17:54:38 1818

Python

《Python3爬虫、数据清洗和可视化实战》之阅读不懂处、主要代码总结(9章)

《Python3爬虫、数据清洗和可视化实战》零一韩要宾黄园园著第九章:pandas数据清理9.1数据读写、选择、整理和描述Pandas是用来数据清洗的Python库,由于它的依赖库很多,所以建议还是下载anaconda,里面内置了相关库。9.1.1读取CSV数据df=pd.read_csv(“csv_path”,delimiter=”,”,encoding=””)参数说明:“csv_path”,CSV文件路径;delimiter=”,”:分隔方式;enco

系统 2019-09-27 17:54:37 1818

Python

Python访问MySQL封装的常用类实例

本文实例讲述了Python访问MySQL封装的常用类。分享给大家供大家参考。具体如下:python访问mysql比较简单,下面整理的就是一个很简单的Python访问MySQL数据库类。自己平时也就用到两个mysql函数:查询和更新,下面是自己常用的函数的封装,大家拷贝过去直接可以使用。文件名:DBUtil.py复制代码代码如下:#-*-encoding:utf8-*-'''@author:crazyant.net@version:2013-10-22封装的

系统 2019-09-27 17:54:30 1818

Python

【Python3网络爬虫开发实战】7.4-使用Selenium爬取淘宝商品

【摘要】在前一章中,我们已经成功尝试分析Ajax来抓取相关数据,但是并不是所有页面都可以通过分析Ajax来完成抓取。比如,淘宝,它的整个页面数据确实也是通过Ajax获取的,但是这些Ajax接口参数比较复杂,可能会包含加密密钥等,所以如果想自己构造Ajax参数,还是比较困难的。对于这种页面,最方便快捷的抓取方法就是通过Selenium。本节中,我们就用Selenium来模拟浏览器操作,抓取淘宝的商品信息,并将结果保存到MongoDB。1.本节目标本节中,我们

系统 2019-09-27 17:54:29 1818