python
文章平均质量分 81
xiabe
这个作者很懒,什么都没留下…
展开
-
python- Heap queue(堆队列模块)
这个模块提供了一种实现对于堆队列算法,也是被人们所知的优先级队列算法。堆是一个二叉树它的父结点小于等于子结点的值。它使用了heap[k] <= heap[2k+1] 和heap[k] <= heap[2k+2] 对于所有的k,计算元素从0开始。为了方便比较,不存在的元素被视为无穷大。对于一个堆,令人感兴趣的属性就是它的根heap[0]。在不同的教科书的堆算法下的api是不同的,主要...原创 2019-04-13 15:41:39 · 1128 阅读 · 0 评论 -
Python web框架——Django
简介django是一个免费的开源的python web框架。它遵循了model-view-template(MVT)的架构模式。由 Django Software Foundation 维护,一个以501©(3)非营利组织形式成立的独立组织。django的主要目标是简单的去开发一个复杂的数据库驱动的网站。该框架强调组件的可重用性和“可插拔性”、代码更少、低耦合、快速开发以及“不要重复自己”...原创 2019-04-01 18:45:10 · 1318 阅读 · 1 评论 -
repr() 对比str()Python
str() 和 repr() 都用来表示string对象。str () 的例子:s = 'Hello, Geeks.'print str(s) print str(2.0/11.0) Output:Hello, Geeks.0.181818181818repr()的例子:s = 'Hello, Geeks.'print repr(s) print repr(2.0/1...原创 2019-04-01 15:03:23 · 150 阅读 · 0 评论 -
python-socket模块[待完成]
源代码: Lib/socket.pysocket—低层次的网络接口这个模块提供了方法给bsd接口,它可以用于多种不同的平台。注意:有些行为可能依赖于平台,因为调用操作系统套接字api。Python接口是将Unix系统调用和套接字库接口直接音译为Python的面向对象风格:socket()函数返回套接字对象,其方法实现各种套接字系统调用。参数类型比C接口中的参数类型要高级一些:对于Pytho...原创 2019-04-01 01:21:09 · 162 阅读 · 0 评论 -
python-asyncore模块
python-asyncore一个异步网络的例子对于基本的HTTP客户端一个异步的基本回应服务器的例子一个异步套接字处理者源代码: Lib/asyncore.py这个模块提供了一个基础的基础结构对于写一个异步的套接字客户端和服务器。这又两种方法去实现一个程序在单一处理器的情况下处理多个事情在一瞬间。多线程编程是最简单的,也是最流行的方法去实现它,但是有一种非常困难的技术,让你可以拥有一切多...原创 2019-04-01 01:01:50 · 1006 阅读 · 1 评论 -
队列——deque(collections)
队列——deque(collections)为什么使用deque?简述例子(基础):其他例子:使用deques的各种方法。为什么使用deque?因为需要使用到队列的结构。看了Queue,之后感觉较为复杂,是一个线程安全的队列。而我如今简单的编程暂时不需要如此复杂的功能。然后,我发现了简单一些的collections.deque(双端队列)简述构造方法class collections...原创 2019-03-27 15:31:12 · 343 阅读 · 0 评论 -
python-Queue(队列)(过于复杂)
简述队列模块实现多生产者、多消费者队列。当信息必须在多个线程之间安全地交换时,它在线程编程中特别有用。此模块中的Queue类实现所有必需的锁定语义。这取决于Python中线程支持的可用性;参见线程模块。模块实现了三种类型的队列,它们只是在检索条目的顺序上有所不同。在FIFO队列中,第一个添加的任务是第一个检索到的任务。在后进先出队列中,最近添加的条目是第一个检索到的条目(像堆栈一样操作)。使用...原创 2019-03-27 14:48:36 · 3642 阅读 · 0 评论 -
872. Leaf-Similar Trees(有空研究下栈算法)
题目如果两棵树得到的叶子序列相同,那么是一组叶子相似树。我的代码# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.val = x# self.left = None# self.right =...原创 2019-03-27 14:43:34 · 123 阅读 · 0 评论 -
674. Longest Continuous Increasing Subsequence
674. Longest Continuous Increasing Subsequence题目解题思路我的代码题目题目挺简单:找一个最长递增子串解题思路我的代码class Solution: def findLengthOfLCIS(self, nums: List[int]) -> int: if not nums: ...原创 2019-03-24 14:58:34 · 105 阅读 · 0 评论 -
594. Longest Harmonious Subsequence
594. Longest Harmonious Subsequence题目解题思路我的代码(效率挺低)优秀代码题目主要意思就是找个一个数字子集,里面的最大值和最小值的差为1.解题思路使用Counter计算每个数字出现的次数,然后用set列出里面的数字,转为为list后排序,然后对item的值 判断,item+1是否存在,如果存在计算出子集长度和最大值比较,最后返回最大值。我的代码(效率...原创 2019-03-24 14:30:48 · 156 阅读 · 0 评论 -
169. Majority Element
169. Majority Element题目解题思路我的代码优秀代码(适用范围更广)最佳代码题目解题思路**自己的方法:**通过Counter来计算出每个数字对应的数字出现的次数,遍历Counter找出出现次数最大值的数字。其他方法: 通过构造set得出数字的列表,使用count来计算出现数字的个数,得到最大值。**优秀方法:**发现我们忽略了一个很重要的信息点:出现次数大于[n/2...原创 2019-03-24 13:16:53 · 162 阅读 · 0 评论 -
409. Longest Palindrome
题目思路使用Counter 对数据进行计数,添加1个奇数 对其他的奇数-1处理,求和,即可。我的总体思路是没有问题的,但代码细节没处理好,效率极低。我的代码(效率极低)from collections import Counterclass Solution: def longestPalindrome(self, s: str) -> int: cnt...原创 2019-03-24 12:59:10 · 120 阅读 · 0 评论 -
205. Isomorphic Strings
205. Isomorphic Strings题目我的代码(效率中等偏快)高效代码(使用了翻译表)题目我的代码(效率中等偏快)先判断他们的元素种类个数是否相同,如果相同,继续比较。将遇到的s中的字符,添加t中字符作为字典进行比对,如果后面比对成功,那么是正确的。class Solution: def isIsomorphic(self, s: str, t: str) ->...原创 2019-03-28 22:36:27 · 99 阅读 · 0 评论 -
python-元组和序列
Tuples and Sequences(元组和序列)我们已经知道了list和string有很多共有的特性,就是索引和切片操作。他们是两种序列数据类型,因为python是一门进步的语言,因为另一种标准串数字类型引入了:tuple。一个tuple包含了很多的值,通过逗号来分隔:就像这样:>>> t = 12345, 54321, 'hello!'>>> ...原创 2019-03-28 13:50:14 · 1031 阅读 · 0 评论 -
Flask学习[基础]
Flask是一个基于Werkzeug、Jinja 2和good intentions的Python微框架。它是开源的,使用BSD开源条款。开始初步学习一个最简单的应用from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return 'Hello, World!'这段代...原创 2019-04-01 23:03:19 · 477 阅读 · 1 评论 -
python 排序
Python列表有一个内置的list.sort()方法,用于修改列表。还有一个sort()内置函数,它从一个迭代器构建一个新的排序列表。在本文中,我们将探讨使用Python对数据进行排序的各种技术。排序基础简单的升序排序非常简单:只需调用 sorted() 函数。它返回一个新的排序列表:>>> sorted([5, 2, 3, 1, 4])[1, 2, 3, 4, 5]...原创 2019-04-20 20:24:21 · 279 阅读 · 0 评论 -
中向上取整的方法
Python match.ceil函数ceil(x)函数是向上取整,即取大于等于x的最接近整数。import mathmath.ceil(float(1)/2)自己实现如对于int类型除法可以采用(A+B-1)/B 即可以求出向上取整的结果。对于float类型,一种是将其转换成int进行判断,另一种是将其进行求余操作。...原创 2019-04-13 14:28:29 · 1318 阅读 · 0 评论 -
python中的__name__的使用
如if\ name == ‘main’:__name__是一个变量,这是一个系统定义的名字。1. 如果模块是被导入,__name__的值为模块名字2. 如果模块是被直接执行,__name__的值为’main’...原创 2019-04-09 00:06:24 · 139 阅读 · 0 评论 -
Python Interpreter
Python Interpreter什么是Python解释器?什么是Python解释器?Python解释器就是一个应用可以运行你的python脚本。$ python <script_file_name>.py在这个命令中,你是用你的python程序去运行你的脚本。在python脚本的顶部——这告诉O/S在scipt上使用python解释器,然后应该允许您这样做。在你的命令...原创 2019-03-29 13:42:05 · 4213 阅读 · 0 评论 -
什么是.pyc?(相比java 中.class)
什么是.pyc?初识.pyc对比一下java解释型语言和编译型语言的区别python 运行过程.py的基本运行机制什么是pyc?——字节码初识.pyc在研究python解释器的时候,遇到了.pyc文件,猜想是解释型语言解析产生的中间文件,如java一般,那么我想系统研究一下。对于python这一解释型语言,我在java后学习,似乎不需要使用如javac命令。对比一下java相对于java...原创 2019-03-29 13:37:25 · 4351 阅读 · 0 评论 -
733. Flood Fill
题目本题难度较高。从一个起始点开始,向4个方向修改相同颜色的点成为新的颜色点,新的颜色点继续扩展。DFS(递归):class Solution: def paint(self, image, sr, sc, h, w, color, newColor): if image[sr][sc] == color: image[sr][sc] = n...原创 2019-04-02 16:32:03 · 74 阅读 · 0 评论 -
Python metaclass(元类)[未完成]
简介元编程这个术语指的是程序了解或操作自身的潜力。Python支持一种名为元类的元编程形式。metaclasses是一个深奥的OOP(面向对象编程)概念,隐藏在几乎所有Python代码的后面。你无论你有没有意识到,都使用过它们。大部分,你不需要直到它。大部分的Python程序员没有考虑过它。然而,当需要时,Python提供了并非所有面向对象语言都支持的功能:您可以深入其中并定义自定义meta...原创 2019-04-02 15:33:01 · 303 阅读 · 0 评论 -
Python maketrans() 方法
@[toc](Python maketrans() 方法)简介Python maketrans() 方法用于给 translate() 方法创建字符映射转换表。一般 maketrans() 方法需要配合 translate() 方法一起使用。语法str.maketrans(intab,outtab[,delchars])intab – 需要转换的字符组成的字符串。outtab –...原创 2019-03-28 22:36:20 · 1834 阅读 · 2 评论 -
python sets中的set(集合)/内联set
@[toc](python sets中的set(集合)/内联set)内置set类型-set,frozensetset对象是由不同的可hashable对象组成的无序集合。常见的用途包括成员测试、从序列中删除重复项,以及计算诸如交集、并集、差分和对称差分等数学操作。(对于其他容器,请参阅内置的dict、list和tuple类以及collections模块。)目前有两种内置的set类型,set和f...原创 2019-03-28 22:35:23 · 1471 阅读 · 0 评论 -
python-HTTP servers(未完待续)
简介源代码: Lib/http/server.py这个模块定义了实现HTTP服务器(Web服务器)的类。**警告:**http。不建议在生产环境中使用服务器。它只实现基本的安全检查。类HTTPServer是一个socketserver。TCPServer子类。它创建并且监听HTTP套接字,将请求发送给处理程序。创建和运行服务器的代码如下所示:def run(server_class=H...原创 2019-03-28 22:34:53 · 657 阅读 · 0 评论 -
Python 装饰器(进阶)
Python装饰器(进阶)到目前为止,您已经了解了如何创建简单的装饰器。您已经很好地理解了什么是装饰器以及它们是如何工作的。从这篇文章中休息一下,把你学到的东西都练习一下。在本教程的第二部分中,我们将探索更高级的特性,包括如何使用以下特性:修饰符类Several decorators on one functionDecorators with argumentsDecorators...原创 2019-04-02 14:14:58 · 212 阅读 · 0 评论 -
Python装饰器(入门)
Decorator原创 2019-04-02 01:42:27 · 369 阅读 · 0 评论 -
Python Global, Local 和 Nonlocal变量
Python Global Variable, Local Variable, Nonlocal VariableGlobal Variables(全局变量)Nonlocal Variables(非局部变量)Global Variables(全局变量)在Python中,函数外部或全局范围内声明的变量称为全局变量。这意味着,全局变量可以在函数内部或外部访问。让我们看一个用Python创建全局变...原创 2019-03-24 11:13:59 · 674 阅读 · 0 评论 -
Python-Errors and Exceptions(未完待续)
Errors and Exceptions1.语法错误2.异常操纵异常4.抛出异常5.用户-定义的异常到目前为止,错误消息还没有被提到,但是如果您尝试过这些示例,您可能已经看到了一些。(至少)有两种可区分的错误:语法错误和异常。1.语法错误语法错误,也称为解析错误,可能是你在学习Python时最常见的问题:>>> while True print('Hello world...原创 2019-03-24 00:26:14 · 161 阅读 · 0 评论 -
Python-Curses模块
Python-Curses什么是Curses?Python Curses模块开始我们的编程吧Windows and Pads什么是Curses?curses库为基于文本的终端提供独立于终端的屏幕绘制和键盘处理设施;这些终端包括VT100s、Linux控制台和各种程序提供的模拟终端。显示终端支持各种控制代码来执行常见的操作,如移动光标、滚动屏幕和擦除区域。不同的终端使用的代码差别很大,而且常常有...原创 2019-03-23 22:33:18 · 14468 阅读 · 1 评论 -
python中的排列-itertools
itertools.product(*iterables[, repeat])itertools.product(*iterables[, repeat])输入迭代的笛卡尔积。(跟顺序有关)大致相当于生成器表达式中的嵌套for循环。例如,product(A, B)对于A中的x和B中的y返回相同的((x,y))。嵌套的循环就像一个里程表,在每次迭代中使用最右边的元素。此模式创建一个字典顺序,...原创 2019-03-26 00:08:03 · 411 阅读 · 0 评论 -
python re正则表达式(简单概述)
re:regular expression operations(正则表达式)这个模块提供了正则表达式类似于Perl。不管是模式还是被搜索的字符串可以是Unicode字符串(str)也是8位的字符串(bytes).然而Unicode和bytes不能被混合:那就是,你不能去匹配的Unicode字符串通过一个字节模式,反而亦然。当要求代替,替换字符串必须与模式和搜索字符串具有相同的类型。一种解决...原创 2019-03-25 23:35:34 · 225 阅读 · 0 评论 -
高德地图实现租房学习
代码<!-- saved from url=(0054)http://labfile.oss.aliyuncs.com/courses/599/index.html --><html style=""><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">...原创 2019-03-25 21:00:24 · 1836 阅读 · 0 评论 -
CSV File Reading and Writing(未完待续)
CSV File Reading and Writing什么是CSV?模块内容什么是CSV?所谓的CSV(逗号分隔值)格式是电子表格和数据库最常见的导入和导出格式。CSV格式在RFC 4180中以标准化的方式描述格式之前已经使用了很多年。缺少定义良好的标准意味着不同应用程序生成和使用的数据常常存在细微的差异。这些差异可能使处理来自多个源的CSV文件变得很麻烦。尽管分隔符和引用字符各不相同,但是...原创 2019-03-25 19:58:08 · 194 阅读 · 0 评论 -
python-爬虫-58同城
python-爬虫-58同城代码代码from bs4 import BeautifulSoupimport requestsimport csvimport timeurl = "https://bj.58.com/pinpaigongyu/pn/{page}/?minprice=2000_4000"#已完成的页数序号,初时为0page = 0csv_file = open...原创 2019-03-25 18:04:44 · 910 阅读 · 0 评论 -
python-Dict(字典)[未完待续]
Dict简介字典创建方法:简介字典是另一种可变容器模型,且可存储任意类型对象。字典创建key只能为不变类型,如数字、字符串、元组>>> a = dict(one=1, two=2, three=3)>>> b = {'one': 1, 'two': 2, 'three': 3}>>> c = dict(zip(['one', 't...原创 2019-03-22 00:35:31 · 103 阅读 · 0 评论 -
Python-Beautiful Soup库学习(基础)
Python-Beautiful Soup库学习让我们开始吧安装Beautiful Soup安装一个解析器创建soup对象类型标签类:导航树通过tag名称来导航。.contents 和 .children.descendants (子孙后代).strings and stripped_stringsBeautiful Soup 是一个python库,从html和xml文件中提取数据。它通常为程序...原创 2019-03-25 15:16:36 · 578 阅读 · 0 评论 -
1013. Pairs of Songs With Total Durations Divisible by 60(未完待续)
1013. Pairs of Songs With Total Durations Divisible by 60题目错误的代码讨论区的代码学习一些有效提高效率的方法:re:regular expression operations(正则表达式)正则表达式语法collection中Counter的方法:关于collections——容器数据类型最高效的代码题目In a list of song...原创 2019-03-21 20:44:30 · 139 阅读 · 0 评论 -
python—requests学习(未完成)
python—requests学习0.什么是requests?1.开始上手1.1 发送请求0.什么是requests?Requests is an elegant and simple HTTP library for Python。Requests是一个优雅而简单的python的HTTP库。1.开始上手1.1 发送请求首先,导入requests模块。(需要安装)import req...原创 2019-03-21 19:42:52 · 298 阅读 · 0 评论 -
python爬虫——12306查询车次
url1:中文地名转英文代码url1=‘https://kyfw.12306.cn/otn/resources/js/framework/station_name.js’这是一个js文件。这是一个12306解析中文地名对应的英文代码的网址。爬取信息:得到一个很长var,各项信息通过@分隔。处理后,得到每项这样的数据:>>> inf [:1]['bjb|北京北|VA...原创 2019-03-25 01:24:42 · 2071 阅读 · 1 评论