- 军军小站|张军博客
搜索到与相关的文章
Python

Python性能优化的20条建议

优化算法时间复杂度算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。减少冗余数据如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。合理使用copy与deepcopy对于dict和list等数据结构的对象,直接赋值使用

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

Python

Python函数参数匹配模型通用规则keyword-only参数

概述Python3对函数参数的排序规则更加通用化了,即Python3keyword-only参数,该参数即为必须只按照关键字传递而不会有一个位置参数来填充的参数。该规则在处理人一多个参数是很有用的。keyword-onlykword_only(1,2,3,c=4)print('-'*20)kword_only(a=1,c=3)示例结果:1(2,3)4--------------------1()3在*args之后的参数都需要在调用中使用关键字的方式传递,否

系统 2019-09-27 17:54:57 1788

Python

浅谈Python中的可变对象和不可变对象

什么是可变/不可变对象不可变对象,该对象所指向的内存中的值不能被改变。当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一个新的地址,变量再指向这个新的地址。可变对象,该对象所指向的内存中的值可以被改变。变量(准确的说是引用)改变后,实际上是其所指的值直接发生改变,并没有发生复制行为,也没有开辟新的出地址,通俗点说就是原地改变。Python中,数值类型(int和float)、字符串str、元组tuple都是不可变类型。

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

Python

python 正则 re模块(详细版)

正则表达式什么是正则表达式?正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式可以干什么?快速高效的查找与分析字符串进行有规律查找比对字符串,也叫:模式匹配具有查找、比对、匹配、替换、插入

系统 2019-09-27 17:54:35 1788

Python

南京大学python课程系列笔记之python基础之第一周:走进python

视频地址:https://www.icourse163.org/course/NJU-10015710051.1python简介:历史,特点,应用1.2第一个python程序:1.输出:print(字符串)print(变量)2.输入:varibale=input("message":)返回的是字符串str类型如需其它类型,可使用int(),float()等函数进行类型转换3.注释:#4.缩进:具有相同缩进的程序语句构成同一语句块1.3python语法基础1

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

Python

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

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

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

Python

Python面向对象编程——总结面向对象的优点

Python面向对象编程——总结面向对象的优点一、从代码级别看面向对象1、在没有学习类这个概念时,数据与功能是分离的defexc1(host,port,db,charset):conn=connect(host,port,db,charset)conn.execute(sql)returnxxxdefexc2(host,port,db,charset,proc_name)conn=connect(host,port,db,charset)conn.call

系统 2019-09-27 17:53:53 1788

Python

Linux下Python获取IP地址的代码

《lnmp一键安装包》中需要获取ip地址,有2种情况:如果服务器只有私网地址没有公网地址,这个时候获取的IP(即私网地址)不能用来判断服务器的位置,于是取其网关地址用来判断服务器在国内还是国外(脚本为了使国内用户快速下载,yum源自动设置成163,这个情况就需要获取网关地址);如果服务器有公网地址,这时获取的IP地址可用来直接判断服务器地理位置。获取服务器IP,如果有公网地址就取公网地址,没有公网地址就取私网网址下面是之前我用shell来获取本地IP脚本:

系统 2019-09-27 17:53:41 1788

Python

Python爬虫工具篇 - 必会用的6款Chrome插件

在日常PC端的Python爬虫过程工作中,Chrome浏览器是我们常用的一款工具。鉴于Chrome浏览器的强大,Chrome网上应用商店很多强大的插件可以帮助我们快速高效地进行数据爬虫。今天推荐的6款Chrome插件,可以大大提升我们的爬虫效率。EditThisCookieEditThisCookie是一个Cookie管理器,可以很方便的添加,删除,编辑,搜索,锁定和屏蔽Cookies。可以将登录后的Cookies先保存到本地,借助cookielib库,直

系统 2019-09-27 17:53:24 1788

Python

python爬虫 模拟登录人人网过程解析

requests提供了一个叫做session类,来实现客户端和服务端的会话保持使用方法1.实例化一个session对象2.让session发送get或者post请求session=requests.session()session.get(url,headers)下面就用人人网来实战一下#coding=utf-8importrequestssession=requests.session()#登录的表单urlpost_url="http://www.ren

系统 2019-09-27 17:53:16 1788