python

1. py文件支持直接调用
import sys
       if __name__ == '__main__':
demo(sys.argv)

#sys.argv[0] 是当前py文件名





2. 扫描目录下的文件
    import os
def ScanForJPG(dir):
        nJPG = 0;
for zsRoot, zsDir, vFile in os.walk(dir):
for zsFile in vFile:
tmp,zsExt = os.path.splitext(zsFile) #os.path下有很多函数支持各种路径操作
if zsExt in ".jpg":
nJPG += 1
return nJPG

def GetFileFromThisRootDir(dir,ext = None):
allfiles = []
needExtFilter = (ext != None)
for root,dirs,files in os.walk(dir):
for filespath in files:
filepath = os.path.join(root, filespath) #合并full path
extension = os.path.splitext(filepath)[1][1:] #获得extesion
if needExtFilter and extension in ext:
tmp, zsXML = os.path.split(filepath) #获得short path
zsXML,tmp = os.path.splitext(zsXML) #获得extension (此处删除了extension)
allfiles.append(zsXML)
elif not needExtFilter:
allfiles.append(filepath)
return allfiles




3. csv文件的写入
   import csv
def demo(argv):
zsDir = argv[1]
vHours = range(24)
hCsvW = csv.writer(file('stat.csv', 'wb')) #必须以"wb"方式打开,如果是"w"方式,生成的csv文件中会出现空白行
hCsvW.writerow(['hour', 'total', 'correct', 'error', 'null']) #csv文件的第一行 每一列的含义
for h in vHours:
zsHour = '%.2d/' % (h) #相当于c的sprintf()
print zsDir + zsHour #支持字符串的链接
nA = ScanForJPG(zsDir + zsHour + 'A/')
nB = ScanForJPG(zsDir + zsHour + 'B/')
nC = ScanForJPG(zsDir + zsHour + 'C/')

hCsvW.writerow([h, nA + nB + nC, nA, nB, nC])   



4. 读取xml文件
    def read_xml(zsXML):
root = ElementTree.parse(zsXML) #解析文件内容
node_ROI = root.find('plocation') #找到指定的ITEM
vXYWH = re.split('\W+',node_ROI.text) #regrex解析项目的内容, node_ROI.text中是item的variable, 返回list
x0 = int(vXYWH[0]) 
y0 = int(vXYWH[1])
x1 = x0 + int(vXYWH[2]) - 1
y1 = y0 + int(vXYWH[3]) - 1
return [x0,y0,x1,y1] #可以返回一个list





5. 图像加载和绘制
    mImg = Image.open(zsJPG)
mDraw = ImageDraw.Draw(mImg) #获得绘制句柄
mDraw.rectangle(vRect,  outline = (255,0,0)) #绘制矩形框, ontline指定边框颜色, fill属性指定填充色, 默认透明 (vRect以左上角和右下角的坐标表示)
zsJPG = outpath + zsXML + "_0.jpg"
mImg.save(zsJPG) #保存图像




5. 图像加载和绘制
    mImg = Image.open(zsJPG)
mDraw = ImageDraw.Draw(mImg) #获得绘制句柄
mDraw.rectangle(vRect,  outline = (255,0,0)) #绘制矩形框, ontline指定边框颜色, fill属性指定填充色, 默认透明 (vRect以左上角和右下角的坐标表示)
zsJPG = outpath + zsXML + "_std.jpg"
mImg.save(zsJPG) #保存图像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值