processing python模式_python学习Processing
标签:
# -*- coding: utf-8 -*-
__author__ = ‘Administrator‘
import bisect
#排序说明:http://en.wikipedia.org/wiki/insertion_sort
#简化一些操作
#1:删减外部调用,降低工作负载
"""
说明:程序复杂度的另一部分是调用其他函数,方法和类所引入的,一般来说,应该尽量将代码放在循环之外,对于嵌套的循环
这点更加重要,不要在一个循环中反复计算可以在循环开始之前计算数值,内循环应该保持简洁.
"""
#2:deque还提供了append 和pop方法,在序列的两端都能以相同的速度执行
#例子2:如下:
from collections import defaultdict,namedtuple
import profile,stat
import sys
s=[(‘a‘,1),(‘b‘,2),(‘c‘,3)]
@profile(‘defaultdict‘)
def faster():
d=defaultdict(list)
for k,v in s:
d[k].append(v)
@profile(‘dict‘)
def slower():
d={}
for k,v in s:
d.setdefault(k,[]).append(v)
print slower(),faster()
print stat[‘dict‘]
print stat[‘defaultdict‘]
lg=defaultdict(long)
print lg[‘one‘]
cus=namedtuple(‘curs‘,‘firsname‘)
c=cus(u‘apped‘,u‘zifoe‘)
print c.firsname
#更多说明
"""
降低复杂度的工作可以通过用算法能很好的地处理高效的数据结构来存储数据实现,也就是说,当解决方法不明显时,应该考虑放弃并且重写出现问题部分,而不是为了性能
而破坏代码的可读性!# -*- coding: utf-8 -*-
__author__ = ‘Administrator‘
import subprocess as process#可移植的能够像线程一样处理的方法
from Processing import Process
#安装它的方法,请看:http://blog.csdn.net/imzoer/article/details/8701116
import os
def work():#它提供了Thread类很像Process类,可以任何平台
print ‘hay i am aprocess id %d‘%os.getpid()
PS=[]
for ii in range(4):
p=Process(target=work)
PS.append(p)
p.start()
for p in PS:
p.join()
#当创建了进程时,将会对内存进行fork,最有效进程使用方式使它们创建之后各自工作,以避免开销,并从线程检查它们的状态,除了内存状态被复制外,Process
#类还在其构造程序中提供了额外的args参数,还可以用来传递所需的数据
#pyprocessing还可以了一个类似于队列的类,可以用来在一个由该包管理的共享内存空间中让多个进程共享数据。
"""
它还提供了ctype和进程之间的对象共享功能,请看:http://pyprocessing.berlios.de/doc/shardctypes.html
"""
#例子2
import Queue as q
print ‘this machine has %d cpus‘\
%processing.cpuCount()
def wo():
f=q.get_nowait()
return ‘workd on‘+f
q=processing.Queue()
pool=processing.Pool()
for i in (‘f1‘,‘f2‘,‘f3‘,‘f4‘,‘f5‘):
q.put(i)
while True:
try:
resut=pool.apply_async(wo)
print resut.get(timeout=1)
except q.Empty:
break
"""
apply_async()方法通过进程池来调用wo函数,并立即返回结果对象,主进程可以将它作为结果返回
get方法可以用来等待结果(具有走进设置)
最后array类和Value类提供了共享内存空间。但是应该通过设计避免使用它们,因为它们会出现代码复杂性.
"""
"""
标签:
原文地址:http://www.cnblogs.com/mhxy13867806343/p/4227255.html
processing python模式_python学习Processing相关推荐
- 2019最新Python学习教程(Python视频教程_Python学习教程_Python学习路线):你心目中编程界的MVP是谁?
2019最新Python学习教程(Python视频教程_Python学习教程_Python学习路线):你心目中编程界的MVP是谁?编程界的王者是渐落寞的Java还是大火的Python? 是不是你们也喜 ...
- processing python模式添加图片_processing学习整理---Image
1.Load and Display(加载与显示) Images can be loaded and displayed to the screen at their actual size or a ...
- processing python模式下载_爱上processing PDF 高清版
给大家带来的一篇关于processing相关的电子书资源,介绍了关于processing方面的内容,本书是由人民邮电出版社出版,格式为PDF,资源大小51.9 MB,Casey Reas编写,目前豆瓣 ...
- processing python模式_详解python之多进程和进程池(Processing库)
环境:win7+python2.7 一直想学习多进程或多线程,但之前只是单纯看一点基础知识还有简单的介绍,无法理解怎么去应用,直到前段时间看了github的一个爬虫项目涉及到多进程,多线程相关内容,一 ...
- 菜鸟学python 哪吒_Python 学习之路 (前言)
为什么要学Python 1,脚本语言本身很方便简洁,未来会有趋势 2,web 方向 3,运维方向 我是学静态语言出身的,java,毕业后从事android 应用开发,曾在工作期间学习过linux,想从 ...
- python勾股定理_Python学习第128课——在Python中实现醉汉随机游走
[每天几分钟,从零入门python编程的世界!] 这节我们在2D平面内实现随机游走.我们先把原理搞清楚,用代码实现这个原理. 原理分析: 我们想像在2D平面内有一个x轴和y轴组成的坐标系,有一个人他是 ...
- python不简单_Python学习并不简单!月薪过万也不易
Python入门简单,精通不易 可以说,大部分编程语言都是入门简单,精通不易. 了解编程语言的基本语法很快,使用编程语言开发符合企业标准的项目很难.要想达到企业用人标准,需要花费非常多的时间去学习编程 ...
- python批量_Python学习第九十三天:Python批量处理图片
1.Pillow库介绍Pillow是Python里的图像处理库,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存.图像显示.格式转换以及基本的图像处理操作等: 安装 pip insta ...
- python大纲_python学习大纲
知乎获赞无数的编程指南,介绍的不光是一门语言的入门,也是关于编程的入门,谈到了作为一名程序员,应该掌握的一些计算机知识. ------ 二.Python社区 强烈推荐Python Tip,有刷题挑战赛 ...
最新文章
- 总结 | 深度学习损失函数大全
- 【NGN学习笔记】5 IMS技术
- 使用Apache Camel 2.14的轻松REST端点
- nvidia-smi每0.1s实时显示显存使用情况,且数字变化处有白底
- asp.net 客户端回调功能的实现机制探讨(响应部分及可能的优化)
- AcWing 4241. 货物运输
- 【网络流24题】No.4 魔术球问题 (二分+最小路径覆盖)
- 使用Automake,Autoconf生成Makefile
- 3S基础知识:在VC++中嵌入MapX的集成二次开发
- Mac配置allure环境变量
- 求解:OPENWRT v21.02固件使用rtl8153b,链路不通?
- 【python 走进NLP】hanNLP 简繁拼音转换
- 气象接口返回图标_天气实况API接口一中央气象台直供
- 回顾我的 2018 读书历程以及个人感悟,让我们一起期待更好的未来(本文耗时 8 个月。。。)
- Module “*” must not contain source root *. The root already belongs to module “*”
- 将栅格影像转换为CAD/GIS矢量的3种方法
- Element UI 组件库分析和二次开发(一)
- JVM(1)——字节码
- win10自动修复失败无限循环_windows自动修复失败,无法启动
- Handlebars js模版