搜索到与相关的文章
Python

python数据结构和GIL及多进程

一数据结构和GIL1queue标准库queue模块,提供FIFO的queue、LIFO的队列,优先队列Queue类是线程安全的,适用于多线程间安全的交换数据,内部使用了Lock和Condition为什么说容器的大小不准确,其原因是如果不加锁,是不可能获取到准确的大小的,因为你刚读取了一个大小,还没取走,有可能被就被其他线程修改了,queue类的size虽然加了锁,但是依然不能保证立即get,put就能成功,因为读取大小和get,put方法是分来的。2GIL

系统 2019-09-27 17:48:10 2114

Python

Python类中的魔法方法之 __slots__原理解析

在类中每次实例化一个对象都会生产一个字典来保存一个对象的所有的实例属性,这样非常的有用处,可以使我们任意的去设置新的属性。每次实例化一个对象python都会分配一个固定大小内存的字典来保存属性,如果对象很多的情况下会浪费内存空间。可通过__slots__方法告诉python不要使用字典,而且只给一个固定集合的属性分配空间classFoo(object):__slots__=("x","y","z")def__init__(self,x,y):self.x=

系统 2019-09-27 17:47:50 2114

Python

Python中的魔法方法深入理解

接触Python也有一段时间了,Python相关的框架和模块也接触了不少,希望把自己接触到的自己觉得比较好的设计和实现分享给大家,于是取了一个“CharmingPython”的小标,算是给自己开了一个头吧,希望大家多多批评指正。:)fromflaskimportrequestFlask是一个人气非常高的PythonWeb框架,笔者也拿它写过一些大大小小的项目,Flask有一个特性我非常的喜欢,就是无论在什么地方,如果你想要获取当前的request对象,只要

系统 2019-09-27 17:47:44 2114

Python

python做中学(四)main函数的用法

什么场景下会有main函数?当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。main函数的作用?__name__=='__main__'是Python的main函数入口。并非说,加入这句才能使用pythonxxx.py来执行,而是说,这里可以判断,当前是否是直接被python直接调用执行。main为什么只有文件当作执行程序的时候才会被执行呢?这是由于两方面原因,一方面,main函数是所有执行程序的入

系统 2019-09-27 17:47:18 2114

Python

Python命名空间详解

通俗的来说,Python中所谓的命名空间可以理解为一个容器。在这个容器中可以装许多标识符。不同容器中的同名的标识符是不会相互冲突的。理解python的命名空间需要掌握三条规则:第一,赋值(包括显式赋值和隐式赋值)产生标识符,赋值的地点决定标识符所处的命名空间。第二,函数定义(包括def和lambda)产生新的命名空间。第三,python搜索一个标识符的顺序是"LEGB"。所谓的"LEGB"是python中四层命名空间的英文名字首字母的缩写。最里面的一层是L

系统 2019-09-27 17:46:43 2114

Python

Python基础--字典操作

dic={'key1':'value1','key2':'value2'}一、增if'key3'notindic:dic['key3']='value3'二、删deldic['key1']#删除键是'Name'的条目dic.clear()#清空字典所有条目deldic#删除字典三、改dic['key1']='value0'#更新四、查遍历forkey,valueindic.items():print(key,value)#同时遍历key,valuefori

系统 2019-09-27 17:45:50 2114

Python

Python正则表达式之基础篇

正则表达式是用于处理字符串的强大工具,它并不是Python的一部分。其他编程语言中也有正则表达式的概念,区别只在于不同的编程语言实现支持的语法数量不同。它拥有自己独特的语法以及一个独立的处理引擎,在提供了正则表达式的语言里,正则表达式的语法都是一样的。下图展示了使用正则表达式进行匹配的流程:1.1介绍正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十

系统 2019-09-27 17:45:43 2114

Python

Python3.6+selenium2.53.6自动化测试

环境:编辑工具:浏览器:有问题可以联系qq:1776376537#coding:utf-8fromcommon.baseimportBasefromseleniumimportwebdriverfromselenium.webdriver.common.action_chainsimportActionChainsfromselenium.webdriver.support.selectimportSelect#打开火狐浏览器driver=webdrive

系统 2019-09-27 17:45:33 2114

Python

工作后的经验 | 做 Python 一定不要只会一个方向!

最近不少人在微信问我现在Python还好就业不好就业?发展前景怎么样?我30多岁了,还能不能转行编程?Python该怎么学?如果做Python到底该做爬虫还是数据分析还是web?......等等这样的问题,现在逐一谈下我的看法,进而引申出目前如果做python,最好要掌握的一些技能以及我个人认为的很稳的发展路线,这里分析的观点会以大部分普通开发者的角度来看待,对一些技术牛人可能就不太适用了。1、Python好就业吗?其实,对于这些问题,我是不太想回答的,可

系统 2019-09-27 17:45:29 2114

Python

简单介绍Python中的几种数据类型

大体上把Python中的数据类型分为如下几类:Number(数字)包括int,long,float,complexString(字符串)例如:hello,"hello",helloList(列表)例如:[1,2,3],[1,2,3,[1,2,3],4]Dictionary(字典)例如:{1:"nihao",2:"hello"}Tuple(元组)例如:(1,2,3,abc)Bool(布尔)包括True、False由于Python中认为所有的东西都是对象,所以

系统 2019-09-27 17:38:45 2114