Python

python高级编程——锁

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

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

Python

Python 离线工作环境搭建的方法步骤

准备在断网的和联网的机器安装pip,下载地址https://pypi.python.org/pypi/pip在联网的开发机器上安装好需要的包例如:pip3installparamikopip3installfabric打包已安装的包新建pyenv文件夹用来存储下载下来的所需安装包pip3list#查看安装的包#使用pip导出当前环境所有依赖包信息文件pip3freeze>requirements.txt#下载所有依赖包到本地pip3install-rreq

系统 2019-09-27 17:54:56 1890

Python

python中的日期操作

Python日期的加减等操作经常会用的,总结一下。1.日期输出格式化所有日期、时间的api都在datetime模块内。datetime=>stringnow=datetime.datetime.now()now.strftime('%Y-%m-%d%H:%M:%S')#输出2012-03-0516:26:23.870105strftime是datetime类的实例方法。2.string=>datetimet_str='2012-03-0516:26:23'

系统 2019-09-27 17:54:18 1890

Python

Python字典嵌套(源码分析/自定义)

今天在写监控脚本的时候遇到一个问题,就是我执行每一个监控模块(脚本)的时候,例如CPU、内存、磁盘脚本,都会返回一个字典格式的数据,但是我需要将这三个字典,组合成一个大字典,然后通过requests模块发送给api接口,so,我就在网上找了一些方法,然后总结,写成这编博文。1、首先定义三个字典(不需要考虑字典的具体内容)>>>cpu_dict={'cpu_count':8,'cpu_ratio':3.5}>>>memory_dict={'memory_co

系统 2019-09-27 17:54:08 1890

Python

【Python】数据结构之集合: set()

BacktoPythonIndex很好玩儿的数据结构,多用于无序数据去重多组数据逻辑运算,寻找交集,并集,非集等操作见https://blog.csdn.net/business122/article/details/7541486

系统 2019-09-27 17:53:35 1890

Python

MySQL-Python安装问题小记

安装完mysql-python后import加载模块提示以下错误,复制代码代码如下:ImportError:libmysqlclient_r.so.16:cannotopensharedobjectfile:Nosuchfileordirectory于是google之,总结一下解决方法:(1)在mysql-ython的安装目录下找到site.cfg,将#mysql_config=XXXXXXXXXXXXXXXX注释符号去掉,并填上mysql_config的

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

Python

python求职准备第1天—进程

进程是操作系统分配内存的最小单位Python中进程用到的库multiprocessing简单的多进程示例frommultiprocessingimportProcessfromtimeimporttime,sleepfromrandomimportrandintdefdownload_task(task_name):print(task_name+'开始下载')time=randint(1,5)sleep(time)print(task_name+f'下载

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

Python

Python使用Pandas对csv文件进行数据处理的方法

今天接到一个新的任务,要对一个140多M的csv文件进行数据处理,总共有170多万行,尝试了导入本地的MySQL数据库进行查询,结果用Navicat导入直接卡死....估计是XAMPP套装里面全默认配置的MySQL性能不给力,又尝试用R搞一下吧结果发现光加载csv文件就要3分钟左右的时间,相当不给力啊,翻了翻万能的知乎发现了Python下的一个神器包:Pandas(熊猫们?),加载这个140多M的csv文件两秒钟就搞定,后面的分类汇总等操作也都是秒开,太牛

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

Python

Python核心基础(二):魔法函数

一:什么是魔法函数看一个简单的例子:classCompany:def__init__(self,employee__list):self.employee=employee__listcompany=Company(['tom','jack','jane'])employee=company.employeeforiteminemployee:print(item)打印结果无疑是tom,jack,jane。那么换一种方式,使用Python的魔法函数:cla

系统 2019-09-27 17:52:26 1890

Python

Python--实现二叉树的遍历操作

一、首先二叉树的定义:classTreeNode:def__init__(self,x):self.val=xself.left=Noneself.right=None构建一棵二叉树:classNode(object):def__init__(self,val):self.val=valself.lchild=Noneself.rchild=NoneclassTree(object):def__init__(self):self.root=Noneself

系统 2019-09-27 17:52:24 1890

Python

Python基于BeautifulSoup和requests实现的爬虫功能示例

本文实例讲述了Python基于BeautifulSoup和requests实现的爬虫功能。分享给大家供大家参考,具体如下:爬取的目标网页:http://www.qianlima.com/zb/area_305/这是一个招投标网站,我们使用python脚本爬取红框中的信息,包括链接网址、链接名称、时间等三项内容。使用到的Python库:BeautifulSoup、requests代码如下:#-*-coding:utf-8-*-importrequestsfr

系统 2019-09-27 17:52:10 1890

Python

Python实现抓取城市的PM2.5浓度和排名

主机环境:(Python2.7.9/Win8_64/bs4)利用BeautifulSoup4来抓取www.pm25.com上的PM2.5数据,之所以抓取这个网站,是因为上面有城市PM2.5浓度排名(其实真正的原因是,它是百度搜PM2.5出来的第一个网站!)程序里只对比了两个城市,所以多线程的速度提升并不是很明显,大家可以弄10个城市并开10个线程试试。最后吐槽一下:上海的空气质量怎么这么差!!!PM25.py复制代码代码如下:#!/usr/bin/envp

系统 2019-09-27 17:51:23 1890

Python

Python何时应该使用Lambda函数

Python中定义函数有两种方法,一种是用常规方式def定义,函数要指定名字,第二种是用lambda定义,不需要指定名字,称为Lambda函数。Lambda函数又称匿名函数,匿名函数就是没有名字的函数,函数没有名字也行?当然可以啦。有些函数如果只是临时一用,而且它的业务逻辑也很简单时,就没必要非给它取个名字不可。好比电影里面的群众演员,往往他们的戏份很少,最多是衬托主演,跑跑龙套,他们需要名字吗?不需要,因为他们仅仅只是临时出镜,下次可能就用不着了,所以犯

系统 2019-09-27 17:50:41 1890

Python

python发送告警邮件脚本

python脚本为敏捷开发脚本,在zabbix监控也起到重要作用,以下是使用python脚本发送告警邮件配置方法。脚本如下:#!/usr/bin/python#coding:utf-8importsmtplibfromemail.mime.textimportMIMETextimportsysmail_host='smtp.126.com'mail_user='username'mail_pass='passwd'mail_postfix='126.com

系统 2019-09-27 17:50:36 1890

Python

Python中的特殊语法:filter、map、reduce、lambda介绍

filter(function,sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)返回:复制代码代码如下:>>>deff(x):returnx%2!=0andx%3!=0>>>filter(f,range(2,25))[5,7,11,13,17,19,23]>>>deff(x):returnx!='a'>>>filt

系统 2019-09-27 17:49:44 1890