Python

python线程中的同步问题及解决方法

多线程开发可能遇到的问题假设两个线程t1和t2都要对num=0进行增1运算,t1和t2都各对num修改1000000次,num的最终的结果应该为2000000。但是由于是多线程访问,有可能出现下面情况:fromthreadingimportThreadimporttimenum=0deftest1():globalnumforiinrange(1000000):num+=1print("--test1--num=%d"%num)deftest2():glo

系统 2019-09-27 17:57:16 1952

Python

使用python写的opencv实时监测和解析二维码和条形码

今天,我实现了一个很有趣的demo,它可以在视频里找到并解析二维码,然后把解析的内容实时在屏幕上显示出来。然后我们直入主题,首先你得确保你装了opencv,python,zbar等环境。然后这个教程对于学过opencv的人可能更好理解,但是没学过也无妨,到时候也可以直接用。比如我的电脑上的环境是opencv2.4.x,python2.7,和最新的zbar,在Ubuntu12.12的系统下运行的假设你的opencv已经安装好了,那么我们就可以安装zbar你可

系统 2019-09-27 17:57:00 1952

Python

python打造爬虫代理池过程解析

最近在使用爬虫爬取数据时,经常会返回403代码,大致意思是该IP访问过于频繁,被限制访问。限制IP访问网站最常用的反爬手段了,其实破解也很容易,就是在爬取网站是使用代理即可,这个IP被限制了,就使用其他的IP。对于高大上的公司来说,他们基本都使用收费的代理,基本不会有什么问题,比较稳定。像我这样的矮矬穷,肯定是用不起收费的代理。一般都是使用国内免费的代理,网上也有很多提供免费的代理。很多人都是从网上爬取一批免费的代理IP,存放在存储媒介中,例如excel文

系统 2019-09-27 17:56:04 1952

Python

python中的decimal类型转换实例详解

[Python标准库]decimal――定点数和浮点数的数学运算作用:使用定点数和浮点数的小数运算。Python版本:2.4及以后版本decimal模块实现了定点和浮点算术运算符,使用的是大多数人所熟悉的模型,而不是程序员熟悉的模型,即大多数计算机硬件实现的IEEE浮点数运算。Decimal实例可以准确地表示任何数,对其上取整或下取整,还可以对有效数字个数加以限制。Decimal小数值表示为Decimal类的实例。构造函数取一个整数或字符串作为参数。使用浮

系统 2019-09-27 17:56:03 1952

Python

Python装饰器用法及原理

Python语言有一个比较Pythonic的功能,也是一个具有很强大功能的特性,那就是装饰器。1.Python装饰器的原理Python中的装饰器是通过利用了函数特性的闭包实现的,所以我们需要了解Python闭包的原理,以及函数的功能特性。1.1函数特性函数作为变量传递defadd(x):returnx+1a=add(5)print(a)#运行结果:6函数作为参数传递defadd(x):returnx+1defexecute(f):returnf(3)pri

系统 2019-09-27 17:54:59 1952

Python

Python3.x selenium 笔记

网上很多的滚动条办法,可能是系统间的差异,或者浏览器的差役,导致结果可能不尽人意我的经常使用的环境是,ubuntu+chrome+chromedirver+selenium+python3.5.2以下笔记,是给基于上环境的滚动到指定位置tagelement=driver..find_elements_by_xpath("//div[@class='_3-kxx']")#目标元素的定位筛选driver.execute_script("returnargume

系统 2019-09-27 17:54:55 1952

Python

Appium+python自动化(三十三)- 本地调试测试代码,远程控制测试

简介在前边所有涉及启动app的时候有这样一行代码driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps),很多小伙伴们和同学们不知道这个ip和端口哪里来的,我觉得有必要给小伙伴解释一下,于是宏哥决定写一篇关于这个appium的服务器ip文章!来给大家答答疑,解解惑!这样就不会问一些比较幼稚的问题,让别人看了笑话,笑掉大牙了。eg:宏哥,宏哥,宏哥,那个我在测试服务器搭建测试环境

系统 2019-09-27 17:53:36 1952

Python

Python之路【第十一篇】:Python面向对象之封装

一引子从封装本身的意思去理解,封装就好像是拿来一个麻袋,把青菜,土豆,花菜,还有苹果一起装进麻袋,然后把麻袋封上口子。照这种逻辑看,封装=‘隐藏’,这种理解是相当片面的。在面向对象中这个麻袋就是你的类或者对象,类或者对象这俩麻袋内部装了数据属性和函数属性,那么对于类和对象来说"封"的概念从何而来,其实封的概念代表隐藏。在学完了面向对象的类和对象相关的知识后,大家都知道了如何把属性装进类或者对象中,那么如何完成封的效果呢?第一个层面的封装:类就是麻袋,这本身

系统 2019-09-27 17:52:56 1952

Python

python中第三方库的安装方法

第一步:建立一个setup.py的文件,文件内容如下:fromsetuptoolsimportsetup,find_packagessetup(name='',version='',packages=find_packages(),#必填author='',author_email='',url='',license='',description='',platforms='Windows',#需要安装的依赖install_requires=[],#此项需

系统 2019-09-27 17:52:53 1952

Python

python基于Selenium的web自动化框架

1什么是seleniumSelenium是一个基于浏览器的自动化工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:SeleniumIDE、SeleniumWebDriver和SeleniumGrid:SeleniumIDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,python等)的形式导出成测试用例。SeleniumWebDriver:提供Web自动化所需的A

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

Python

Python一行代码搞定炫酷可视化,你需要了解一下Cufflinks !

前言学过Python数据分析的朋友都知道,在可视化的工具中,有很多优秀的三方库,比如matplotlib,seaborn,plotly,Boken,pyecharts等等。这些可视化库都有自己的特点,在实际应用中也广为大家使用。plotly、Boken等都是交互式的可视化工具,结合Jupyternotebook可以非常灵活方便地展现分析后的结果。虽然做出的效果非常的炫酷,比如plotly,但是每一次都需要写很长的代码,一是麻烦,二是不便于维护。我觉得在数据

系统 2019-09-27 17:52:48 1952

Python

Python3 queue队列模块详细介绍

queue介绍queue是python中的标准库,俗称队列。在python中,多个线程之间的数据是共享的,多个线程进行数据交换的时候,不能够保证数据的安全性和一致性,所以当多个线程需要进行数据交换的时候,队列就出现了,队列可以完美解决线程间的数据交换,保证线程间数据的安全性和一致性。注意:在python2.x中,模块名为Queuequeue模块有三种队列及构造函数Pythonqueue模块的FIFO队列先进先出。queue.Queue(maxsize)LI

系统 2019-09-27 17:52:43 1952

Python

Python 协程与go协程的区别

进程、线程和协程进程的定义:进程,是计算机中已运行程序的实体。程序本身只是指令、数据及其组织形式的描述,进程才是程序的真正运行实例。线程的定义:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。进程和线程的关系:一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。CPU的最小调度单元是线程不是进程,所以单进程多线程也可以利用多核CPU.协程的定义:协程通过在线程中实现调度,避免了陷

系统 2019-09-27 17:52:14 1952

Python

Python 的 Socket 编程

Socket是网络应用的基础。而Python使得网络socket编程入门变得超级简单。在这篇简介里面我们将创建一个简单服务器,用于接受和相应客户端程序的请求。由于本人最近对LinuxContainers有点痴迷,因此我们也将在服务器中实现2个容器。同时在容器中我们在几秒钟内就能创建其他一些主机,这就能非常简单的模拟出一个网络。创建容器我使用的是Ubuntu14.04.然后用root用户运行下面的命令就可以创建好2个容器了。复制代码代码如下:lxc-crea

系统 2019-09-27 17:51:21 1952

Python

python查找重复图片并删除(图片去重)

本文实例为大家分享了python查找重复图片并删除的具体代码,供大家参考,具体内容如下和网络爬虫配套的,也可单独使用,从网上爬下来的图片重复太多,代码支持识别不同尺寸大小一致的图片,并把重复的图片删除,只保留第一份。#-*-coding:utf-8-*-importcv2importnumpyasnpimportos,sys,typesdefcmpandremove2(path):dirs=os.listdir(path)dirs.sort()iflen(

系统 2019-09-27 17:51:12 1952