编程技术 - 军军小站|张军博客
Python

Python的互斥锁与信号量

并发与锁a.多个线程共享数据的时候,如果数据不进行保护,那么可能出现数据不一致现象,使用锁,信号量、条件锁b.c.互斥锁1.互斥锁,是使用一把锁把代码保护起来,以牺牲性能换取代码的安全性,那么Rlock后必须要relase解锁不然将会失去多线程程序的优势2.互斥锁的基本使用规则:1importthreading2#声明互斥锁3lock=threading.Rlock();4defhandle(sid):#功能实现代码5lock.acquire()#加锁6#

系统 2019-09-27 17:48:09 1826

Python

python excel转换csv代码实例

为了提高工作效率(偷懒),用python去解决。工作需要,需要将excel文件转化为csv文件,要是手工的一个个去转换,每个sheet页不但有几十个字段,中间还夹杂着空格,然后按顺序转换成csv文件,这要是手工完成,一两个还行,多了那就是要死人的节奏了,这时候想到了python,走起。__author__='zxl'importpandasaspdimportosimportxlrdpath=r'/Users/zhangxl/Desktop/'filena

系统 2019-09-27 17:47:56 1826

Python

python使用in操作符时元组和数组的区别分析

在python中可以使用in符号判断指定的元素是否存在于列表中,但我发现元组和数组存在区别,下面是详细实验结果。>>>'jb51.net'in['haotu.net','jb51.net']True>>>'jb51.net'in('haotu.net','jb51.net')True>>>'jb51.net'in['jb51.net/codes','haotu.net']False>>>'jb51.net'in('jb51.net/codes','haot

系统 2019-09-27 17:47:15 1826

Python

Python 执行字符串表达式函数(eval exec execfile)

仔细研读后学习了三个函数:eval:计算字符串中的表达式exec:执行字符串中的语句execfile:用来执行一个文件需注意的是,exec是一个语句,而eval()和execfile()则是内建built-in函数。Python2.7.2(default,Jun122011,15:08:59)[MSCv.150032bit(Intel)]onwin32Type"help","copyright","credits"or"license"formoreinf

系统 2019-09-27 17:46:53 1826

Python

在SAE上部署Python的Django框架的一些问题汇总

花了些工夫将碎片网部署到了SAE,中途遇到各类问题。感觉SAE看上去很美,实际上却并不是太成熟(至少python版如此)。下面记录下我遇到的一些主要问题以及解决方法。django版本问题Django1.4都即将发布了,SAE平台自带的SAE版本依旧为1.2x。为使用django1.3版本,你需上传自己的django。具体做法可参考SAE手册中的runtime.html#virtualenv日志模块出错最先遇到的是日至模块的问题。错误显示AdminEmail

系统 2019-09-27 17:46:12 1826

Python

【python】 一文弄懂浅拷贝与深拷贝

一、可变对象与非可变对象想要理解浅拷贝与深拷贝就必须得先明白可变对象与非可变对象。可变对象有:list,dict,set不可变对象有:int,float,bool,str,tuple。两者区别:对于可变对象,其值改变是在原地址上操作,不会创建新的内存地址。对于不可变对象其值改变是直接创建新的内存地址。二、赋值操作符‘=’表示对象的引用。python里面的赋值操作符‘=’实际上是对象的引用,其并没有进行复制操作。如果如果赋值操作符右边的操作数是字面值,比如字

系统 2019-09-27 17:46:11 1826

Python

Python3中urlencode和urldecode的用法详解

在Python3中,将中文进行urlencode编码使用函数urllib.parse.quote(string,safe='/',encoding=None,errors=None)而将编码后的字符串转为中文,则使用urllib.parse.unquote(string,encoding='utf-8',errors='replace')示例代码如下:test="微信公众账号比特量化"print(test)new=urllib.parse.quote(te

系统 2019-09-27 17:45:54 1826

Python

构建Python包的五个简单准则简介

创建一个软件包(package)似乎已经足够简单了,也就是在文件目录下搜集一些模块,再加上一个__init__.py文件,对吧?我们很容易看出来,随着时间的推移,通过对软件包的越来越多的修改,一个设计很差的软件包可能会出现循环依赖问题,或是可能变得不可移植和不可靠。1.__init__.py仅为导入服务对于一个简单的软件包,你可能会忍不住把工具方法,工厂方法和异常处理都丢进__init__.py,千万别这样!一个结构良好的__init__.py文件,仅为一

系统 2019-09-27 17:45:42 1826

Python

Python中函数的用法实例教程

本文以数值计算为例讲述了Python中函数的用法,分享给大家供大家参考借鉴之用。具体如下:我们都知道圆的面积计算公式为:S=πr2当我们知道半径r的值时,就可以根据公式计算出面积。假设我们需要计算3个不同大小的圆的面积:r1=12.34r2=9.08r3=73.1s1=3.14*r1*r1s2=3.14*r2*r2s3=3.14*r3*r3当代码出现有规律的重复的时候,你就需要当心了,每次写3.14*x*x不仅很麻烦,而且,如果要把3.14改成3.1415

系统 2019-09-27 17:45:31 1826

Python

Python用模块pytz来转换时区

前言最近遇到了一个问题:我的server和client不是在一个时区,server时区是EDT,即美国东部时区,client,就是我自己的电脑,时区是中国标准时区,东八区。处于测试需要,我需要向server发送一个时间,使得server在这个时间戳去执行一些动作。这个时间戳通常是当前时间加2分钟或者几分钟。通常美东在夏令时时,和我们相差12小时,所以直接减掉这12小时,然后再加两分钟,可以实现发送基于server的时间戳,但是只有一半时间是夏令时,所以考虑

系统 2019-09-27 17:38:44 1826

Python

12步教你理解Python装饰器

通过下面的步骤让你由浅入深明白装饰器是什么。假定你拥有最基本的Python知识,本文阐述的东西可能对那些在工作中经常接触Python的人有很大的帮助。1、函数(Functions)在Python里,函数是用def关键字后跟一个函数名称和一个可选的参数表列来创建的,可以用关键字return指定返回值。下面让我们创建和调用一个最简单的函数:>>>deffoo():...return1>>>foo()1该函数的函数体(在Python里将就是多行语句)是强制性的并

系统 2019-09-27 17:38:30 1826

Python

Python多线程、异步+多进程爬虫实现代码

安装Tornado省事点可以直接用grequests库,下面用的是tornado的异步client。异步用到了tornado,根据官方文档的例子修改得到一个简单的异步爬虫类。可以参考下最新的文档学习下。pipinstalltornado异步爬虫#!/usr/bin/envpython#-*-coding:utf-8-*-importtimefromdatetimeimporttimedeltafromtornadoimporthttpclient,gen,

系统 2019-09-27 17:38:10 1826

Python

学习python之编写简单简单连接数据库并执行查询操作

python连接数据库操作,方法如下:在本机的mysql数据库中有一个名为yao的库,其中有一个名为user的表,表中的内容如图下面,则是python连接数据库的方法,及查找出表中的内容,代码如下:#!/usr/bin/python#filenameconn.pyimportMySQLdb#载入连接数据库模块try:#尝试连接数据库conn=MySQLdb.connect("localhost","root","www","yao",charset="ut

系统 2019-09-27 17:37:52 1826

编程技术

漂亮精致的透明小球图标flash绘制

我们先从中间的透明小球开始。通过下面的绘制方法和过程介绍,相信你一定能掌握画立体形体的基本方法,那就是:依次画基本形状、渐变、高光、阴影。1.在Flash中新建一个mc,名字就叫作icon_ball吧。2.画一个正圆形,设置轮廓和填充的样式,效果如下:3.用渐变调整工具调整一下:4.新建一个图层,取名hilight,顺便把原来的帧改名ball。5.再画一个圆,移动到如图位置。6.在ColorMixer面板中修改一下结果如图:图中黑色表示透明,取消选择看看。

系统 2019-08-29 23:36:21 1826

编程技术

ClassLoader解析

转载自----http://shangjava.iteye.com/blog/1097096ClassLoader应该是每一个Java程序员都必须了解的,但是我整整工作了四年才发现原来在这方面全是空白,现在在做模块化,必须得了解这方面的知识,模块间必须做隔离.以下是我这段时候的学习和总结,很多东西都是借网上的资料,JDK的ClassLoader的API,做如下总结:1.类加载器概述类加载器是一个对象,是负责加载类.在JVM是通过类加载器的调用LoadCla

系统 2019-08-29 23:15:50 1826