1.str.format():使用“{}”占位符格式化字符串(占位符中的索引号形式和键值对形式可以混合使用)。>>>string='python{},django{},tornado{}'.format(2.7,'web','tornado')#有多少个{}占位符就有多少个值与其对应,按照顺序“填”进字符串中>>>string'python2.7,djangoweb,tornadotornado'>>>string='python{},django{},t
系统 2019-09-27 17:55:07 2335
不完美的Python自从各类Python大火,感觉天上地下哪儿都有Python的一席之地,Python功夫好啊…但python有些细节上缺少其他语言的便利。今天我们就来举几个例子。跳出外层循环大家都知道,在Java中存在标签的概念,当我们存在多层循环时,Java可以使用标签控制指定的循环层。举个小栗子:publicclassOuterLoop{publicstaticvoidmain(String[]args){outer:for(inti=0;i<5;i
系统 2019-09-27 17:54:10 2335
Python2的报废(EOL)日期迟迟未到,不过现在终于有了眉目。自2020年1月1日起,Python2将不再得到支持。Python的核心开发人员将不再提供错误修复版或安全更新。因此,如果你仍在使用Python2.x,是时候将代码移植到Python3了。如果你继续使用未得到支持的模块,可能危及贵企业及数据的安全性,因为无人修复的漏洞迟早会出现。问题的严重性下面这张表列出了十个流行的Python软件包及统计数据,来自Python社区开发和共享的软件的存储中心
系统 2019-09-27 17:54:02 2335
目录一,轮询和长轮询二,分析web端微信三,爬虫套路一,轮询和长轮询短轮询的基本思路就是浏览器每隔一段时间向浏览器发送http请求,服务器端在收到请求后,不论是否有数据更新,都直接进行响应。这种方式实现的即时通信,本质上还是浏览器发送请求,服务器接受请求的一个过程,通过让客户端不断的进行请求,使得客户端能够模拟实时地收到服务器端的数据的变化。这种方式的优点是比较简单,易于理解,实现起来也没有什么技术难点。缺点是显而易见的,这种方式由于需要不断的建立http
系统 2019-09-27 17:53:45 2335
Python两数相加LeetcodeNo.2思路很简单,模拟小学加法运算就好了,因为是逆序的,头指针指向的那个其实就是个位,往后加就完事,但是唯一需要注意的是,最高位可能有进位。(属于代码练习题)ps:还有人说先把数全部取出来,用计算机加法算完,再建立链表连接起来,乍一看有点投机取巧好像可行的样子,但是我们要考虑计算和的时候会溢出。还有人考虑直接在原来的链表上改数字,多一位的话,就再加一个链表,首先不知道leetcode允不允许改数字,毕竟这种题目也是考察
系统 2019-09-27 17:53:35 2335
一、前言以前使用selenium的无头浏览器,自从phantomjs2016后慢慢不更新了之后,selenium也开始找下家,这时候谷歌的chrome率先搞出来无头浏览器并开放了各种api,随后firefox也开始做。现在selenium的测试也都支持这两个浏览器的无头模式了,只需要在引入的时候配置一下就可以了。之所以要采用谷歌chrome官方无头框架puppeteer的python版本pyppeteer,是因为有些网页是可以检测到是否是使用了seleni
系统 2019-09-27 17:52:58 2335
JSON是一种轻量级的数据交换格式,各种语言都有良好的支持。字典是Python的一种数据结构。可以看成关联数组。有些时候我们需要设计到字典转换成JSON序列化到文件,或者从文件中读取JSON。简单备忘一下。Dict转JSON写入文件复制代码代码如下:#!/usr/bin/envpython#coding=utf-8importjsond={'first':'One','second':2}json.dump(d,open('/tmp/result.txt'
系统 2019-09-27 17:52:57 2335
本文分享的实例主要实现的是Python+matplotlib绘制一个有阴影和没有阴影的3D条形图,具体如下。首先看看演示效果:完整代码如下:importnumpyasnpimportmatplotlib.pyplotaspltfrommpl_toolkits.mplot3dimportAxes3D#setupthefigureandaxesfig=plt.figure(figsize=(8,3))ax1=fig.add_subplot(121,projec
系统 2019-09-27 17:52:34 2335
Python正则表达式匹配数字电话号码:\d{3}-\d{8}|\d{4}-\d{7}QQ号:[1-9][0-9]{4,}中国邮政编码:[1-9]\d{5}(?!\d)身份证:\d{15}|\d{18}ip地址:\d+\.\d+\.\d+\.\d+[1-9]\d*正整数-[1-9]\d*负整数-?[1-9]\d*整数[1-9]\d*|0非负整数-[1-9]\d*|0非正整数[1-9]\d*\.\d*|0\.\d*[1-9]\d*$正浮点数-([1-9]\d
系统 2019-09-27 17:50:40 2335
目录1、常见并发类型2、同步版本3、多线程4、异步IO5、多进程6、总结1、常见并发类型I/O密集型:蓝色框表示程序执行工作的时间,红色框表示等待I/O操作完成的时间。此图没有按比例显示,因为internet上的请求可能比CPU指令要多花费几个数量级的时间,所以你的程序可能会花费大部分时间进行等待。CPU密集型:IO密集型程序将时间花在cpu计算上。常见并发类型以及区别:2、同步版本我们将使用requests访问100个网页,使用同步的方式,request
系统 2019-09-27 17:50:10 2335