Python

Python性能优化的20条建议

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

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

Python

Python装饰器decorator用法实例

本文实例讲述了Python装饰器decorator用法。分享给大家供大家参考。具体分析如下:1.闭包(closure)闭包是Python所支持的一种特性,它让在非globalscope定义的函数可以引用其外围空间中的变量,这些外围空间中被引用的变量叫做这个函数的环境变量。环境变量和这个非全局函数一起构成了闭包。复制代码代码如下:defouter(x):y=[1,2,3]definner():printxprintyreturninnerx=5#这个x没有被

系统 2019-09-27 17:54:34 2031

Python

浅谈python import引入不同路径下的模块

python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。下面将具体介绍几种常用情况:(1)主程序与模块程序在同一目录下:如下面程序结构:`--src|--mod1.py`--test1.py若在程序test1.py中导入模块mod1,则直接使用importmod1或frommod1import*;(2)主程序所在目录是模块所在目录的父(或祖辈)目录如下面程序结构:`--src|--mod1.py|--mod2|`

系统 2019-09-27 17:54:32 2031

Python

Python爬虫偷懒神器 —— 一键构造请求头

今天介绍个神奇的网站!堪称爬虫偷懒的神器!我们在写爬虫,构建网络请求的时候,不可避免地要添加请求头(headers),以mdn学习区为例,我们的请求头是这样的:一般来说,我们只要添加user-agent就能满足绝大部分需求了,Python代码如下:importrequestsheaders={#'authority':'developer.mozilla.org',#'pragma':'no-cache',#'cache-control':'no-cach

系统 2019-09-27 17:53:21 2031

Python

python粘包问题及socket套接字编程详解

粘包问题TCP协议在传输过程中会出现数据粘包问题讲一下TCP和UDP的区别,都是传数据的协议,没有好坏之说,只是不同的应用需求可能会更好选择哪一个协议TCP:适合传输数量大,需要建立连接,会出现粘包问题,粘包问题可以解决,确定传入的长度,接收同样长度就可以保证一次性传输完UDP:适合传输数据量小,没有粘包,不需要连接,一次性传输,下一次就是新的数据,弊端就是数据丢失,不安全QQ是用什么协议呢?按理应该可以用UDP协议,但是实际用的是TCP协议,这是历史遗留

系统 2019-09-27 17:53:03 2031

Python

使用Python编写Linux系统守护进程实例

守护进程(daemon)是指在UNIX或其他多任务操作系统中在后台执行的电脑程序,并不会接受电脑用户的直接操控。此类程序会被以进程的形式初始化。通常,守护进程没有任何存在的父进程(即PPID=1),且在UNIX系统进程层级中直接位于init之下。守护进程程序通常通过如下方法使自己成为守护进程:对一个子进程调用fork,然后使其父进程立即终止,使得这个子进程能在init下运行。�C维基百科守护进程区别于普通用户登陆系统后运行的进程,它是直接由系统初始化,和系

系统 2019-09-27 17:52:33 2031

Python

python代码 FTP备份交换机配置脚本实例解析

代码如下#!/bin/python#coding=utf-8#python-version=2.75#使用python2fromftplibimportFTP#引用ftplib库中的FTP功能模块,进行ftp下载使用importtime#引用time模块importos#引用os模块"""使用字典,定义交换机主机,一个字典包含多个键,一个键使用一个列表,包含多个主机地址按照实际情况定义"""dic={'tongjiju':['XXXX.XXXX.XXXX.

系统 2019-09-27 17:52:21 2031

Python

Python迭代器

print("我想打印一个字符串%s"%123)print("我想打印一个字符串",123)print("我想打印一个字符串{}".format(123))这三个输出有什么区别喃?Python中一个数据是否可以迭代(能否使用For)isinstance(需要判断的数据,Iterable)查看返回值,true则可以迭代,false不能迭代。如果创建一个可以迭代的对象?必须实现__iter__()方法在__iter__方法中需要返回一个具有__iter__方法

系统 2019-09-27 17:52:09 2031

Python

python学习笔记-数据结构与语句

基础元素学习一门编程语言的时候,我最先考虑的事情就是如何操作值,值(value)在程序组可以是一个数字1,2,3,4,字符'hello,word'.我们使用变量来保存这些值。又把变量保存的值成为对象,计算机会给变量的对象和变量分配内存空间。python使用的内存分配方式成为引用语义或者对象语义,而像c语言使用的时值语义。接下来具体说明一下这两种语义的区别。值语义:所谓值语义是指目标对象由源对象拷贝生成,且生成后与源对象完全无关,彼此独立存在,改变互不影响。

系统 2019-09-27 17:51:31 2031

Python

Python中使用第三方库xlrd来读取Excel示例

本篇文章介绍如何使用xlrd来读取Excel表格中的内容,xlrd是第三方库,所以在使用前我们需要安装xlrd。另外我们一般会使用xlwt来写Excel,所以下一篇文章我们会来介绍如何使用xlwt来写Excel。xlrd下载:xlrd0.8.0安装xlrd安装xlrd,只需运行setup即可,另外你也可以直接解压缩到你的project中,也可以直接用xlrd的API获取Excel,这里称之为workbook复制代码代码如下:open_workbook(fi

系统 2019-09-27 17:51:03 2031

Python

Python if语句知识点用法总结

计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用if语句实现:age=20ifage>=18:print'yourageis',ageprint'adult'print'END'注意:==Python代码的缩进规则==。具有相同缩进的代码被视为代码块,上面的3,4行print语句就构成一个代码块(但不包括第5行的print)。如果if语句判断为True,就会执行这个代码块。

系统 2019-09-27 17:51:01 2031

Python

[转] Python之time模块的时间戳、时间字符串格式化与转换

fromhttps://blog.csdn.net/mighty13/article/details/78147357Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。time.struct_time(tm_year=2017,tm_mon=10,tm_mday=1,tm_

系统 2019-09-27 17:50:56 2031

Python

一个简单的selenium示例(python)

运行本示例前,请确保chrome和chromedriver版本一致fromseleniumimportwebdriverimporttime#调用Chromdriver驱动driver=webdriver.Chrome()#打开百度页面driver.get("https://www.baidu.com")#在百度页面停留3秒time.sleep(3)#关闭浏览器driver.quit()附:chrome和chromedriver各版本下载地址https:/

系统 2019-09-27 17:50:53 2031

Python

Python split() 函数拆分字符串将字符串转化为列的方法

函数:split()Python中有split()和os.path.split()两个函数,具体作用如下:split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)os.path.split():按照路径将文件名和路径分割开一、函数说明1、split()函数语法:str.split(str="",num=string.count(str))[n]参数说明:str:表示为分隔符,默认为空格,但是不能为空('')。若字符串

系统 2019-09-27 17:50:49 2031

Python

几行Python代码快速解析、整理上万份数据文件

在这个世界上,人们每天都在用Python完成着不同的工作。而文件操作,则是大家最常需要解决的任务之一。使用Python,你可以轻松为他人生成精美的报表,也可以用短短几行代码快速解析、整理上万份数据文件。当我们编写与文件相关的代码时,通常会关注这些事情:我的代码是不是足够快?我的代码有没有事半功倍的完成任务?在这篇文章中,我会与你分享与之相关的几个编程建议。我会向你推荐一个被低估的Python标准库模块、演示一个读取大文件的最佳方式、最后再分享我对函数设计的

系统 2019-09-27 17:50:22 2031