- 军军小站|张军博客
搜索到与相关的文章
Python

如何编写快速且线程安全的Python代码

概述如今我也是使用Python写代码好多年了,但是我却很少关心GIL的内部机制,导致在写Python多线程程序的时候。今天我们就来看看CPython的源代码,探索一下GIL的源码,了解为什么Python里要存在这个GIL,过程中我会给出一些示例来帮助大家更好的理解GIL。GIL概览有如下代码:staticPyThread_type_lockinterpreter_lock=0;/*ThisistheGIL*/这行代码位于Python2.7源码ceval.c

系统 2019-09-27 17:52:42 1787

Python

Python Web Flask源码解读(四)——全局变量

关于我一个有思想的程序猿,终身学习实践者,目前在一个创业团队任teamlead,技术栈涉及Android、Python、Java和Go,这个也是我们团队的主要技术栈。Github:https://github.com/hylinux1024微信公众号:终身开发者(angrycode)Flask中全局变量有current_app、request、g和session。不过需要注意的是虽然标题是写着全局变量,但实际上这些变量都跟当前请求的上下文环境有关,下面一起

系统 2019-09-27 17:52:41 1787

Python

python psutil模块使用方法解析

psutil(进程和系统实用程序)是一个跨平台的库,用于在Python中检索有关运行进程和系统利用率(CPU,内存,磁盘,网络,传感器)的信息。它主要用于系统监视,分析和限制流程资源以及运行流程的管理。它实现了UNIX命令行工具提供的许多功能,例如:ps,top,lsof,netstat,ifconfig,who,df,kill,free,nice,ionice,iostat,iotop,uptime,pidof,tty,taskset,pmap。psut

系统 2019-09-27 17:52:36 1787

Python

Python+matplotlib实现填充螺旋实例

填充螺旋演示结果:实例代码:importmatplotlib.pyplotaspltimportnumpyasnptheta=np.arange(0,8*np.pi,0.1)a=1b=.2fordtinnp.arange(0,2*np.pi,np.pi/2.0):x=a*np.cos(theta+dt)*np.exp(b*theta)y=a*np.sin(theta+dt)*np.exp(b*theta)dt=dt+np.pi/4.0x2=a*np.cos

系统 2019-09-27 17:52:35 1787

Python

Python机器学习之数据探索可视化库yellowbrick

背景介绍从学sklearn时,除了算法的坎要过,还得学习matplotlib可视化,对我的实践应用而言,可视化更重要一些,然而matplotlib的易用性和美观性确实不敢恭维。陆续使用过plotly、seaborn,最终定格在了Bokeh,因为它可以与Flask完美的结合,数据看板的开发难度降低了很多。前阵子看到这个库可以较为便捷的实现数据探索,今天得空打算学习一下。原本访问的是英文文档,结果发现已经有人在做汉化,虽然看起来也像是谷歌翻译的,本着拿来主义,

系统 2019-09-27 17:52:35 1787

Python

Python 元组操作总结

Python的元组和列表类似,不同之处在于元组中的元素不能修改(因此元组又称为只读列表),且元组使用小括号而列表使用中括号,如下:tup1=('physics','chemistry',1997,2000)tup2=(1,2,3,4,5,6)特别注意:1、元组中只包含一个元素时,需要在元素后面添加逗号来消除歧义tup1=(50,)2、元组中的元素值使不允许修改的,但可以对元组进行连接组合tup1=(12,34.56)tup2=('abc','xyz')tu

系统 2019-09-27 17:52:18 1787

Python

详解Python核心对象类型字符串

Python的字符串的特点Python与C语言,Java语言都不一样,没有单个字符,只有一个有一个字符的字符串。字符串对象不可修改,属于不可变类型字符串和列表,元组都从属于序列这个对象类别。所以序列支持的操作,字符串也支持。用单引号和双引号表示都行,并列的字符串串常量会自动合并,不需要显式的用加号表示。单双引号里面的特殊字符必须用转义序列表示,比如”,',\都需要在前面加个、,但是在三引号里面不需要转义。Python的字符串的支持的基本操作支持序列的操作,

系统 2019-09-27 17:52:13 1787

Python

自学Python编程的第八天----------来自苦逼的转行人

2019-09-18-21:11:24(初学者不会学博客,望大家见谅见谅)今天学的内容是有关list.、dict、set集合的使用方法和注意事项list和dict在循环中不可删,而且list在迭代输出时进行删除是会导致索引跟着改变所以一般list不在循环过程中进行删除list和dict要进行删除时,应该把要删除的记录到另一个列表中,然后在进行删除深浅拷贝:浅拷贝只拷贝第一层的内容,而深拷贝是全部内容都进行了拷贝下面是总结的内容:一.重要知识点1.str.j

系统 2019-09-27 17:51:29 1787

Python

python BeautifulSoup设置页面编码的方法

在用BeautifulSoup进行抓取页面的时候,会各种各样的编码错误。可以通过在beautifulsoup中指定字符编码,解决问题。复制代码代码如下:importurllib2fromBeautifulSoupimportBeautifulSouppage=urllib2.urlopen('http://www.163.com');soup=BeautifulSoup(page,from_encoding="gb2312")printsoup.origi

系统 2019-09-27 17:51:09 1787

Python

Python自然语言处理工具小结

作者:伏草惟存来源:http://www.cnblogs.com/baiboy/p/nltk2.htmlPython的几个自然语言处理工具1.NLTK:NLTK在用Python处理自然语言的工具中处于领先的地位。它提供了WordNet这种方便处理词汇资源的借口,还有分类、分词、除茎、标注、语法分析、语义推理等类库。2.Pattern:Pattern的自然语言处理工具有词性标注工具(Part-Of-SpeechTagger),N元搜索(n-gramsearc

系统 2019-09-27 17:51:09 1787