为您找到搜索结果:5822个
Python3之format
print('{0},{1}'.format('zhangk',32))print('{},{},{}'.format('zhangk','boy',32))print('{name},{sex},{age}'.format(age=32,sex='male',name='zhangk'))#格式限定符#它有着丰富的的“格式限定符”(语法是{}中带:号),比如:#填充与对齐#填充常跟对齐一起使用#^、<、>分别是居中、左对齐、右对齐,后面带宽度#:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充print('{:>8}'.format('zhang'))print('{:0>8}'.format('zhang'))print('{:a<8}'.format('zhang'))print('{:p^10}'.format('zhang'))#精度与类型f#精度常跟类型f一起使用print('{:.2f}'.format(31.31412))#其他类型#主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制p...
Python3之Zip
fromcollectionsimportdefaultdictfromcollectionsimportOrderedDictd=defaultdict(list)d['a'].append(1)d['a'].append(2)d['b'].append(5)print(d)#di=dict(list)#di['b'].append(11)#di['b'].append(22)#di['c'].append(55)#print(di)ds=defaultdict(set)ds['b'].add(11)ds['b'].add(22)ds['c'].add(33)print(ds)do=OrderedDict()do['foo']=1do['far']=2do['coo']=5forkeyindo:print(key,do[key])#字典的运算prices={'IBM':205.5,'APPLE':500,'HP':43,'FB':88.3}min_prices=min(zip(prices.values(),prices.keys()))print(min_prices)max_pr...
python时间处理之datetime
#-*-coding:utf-8-*-#datetime类#datetime是date与time的结合体,包括date与time的所有信息。#它的构造函数如下:#datetime.datetime(year,month,day[,hour[,minute[,second[,microsecond[,tzinfo]]]]])#各参数的含义与date、time的构造函数中的一样,要注意参数值的范围。#1.datetime类定义的类属性与方法:#datetime.min、datetime.max:datetime所能表示的最小值与最大值;#print:datetime.max:9999-12-3123:59:59.999999#print:datetime.min:0001-01-0100:00:00fromdatetimeimport*importtimeprint('datetime.max:'+str(datetime.max))print('datetime.min:'+str(datetime.min))#datetime.resolution:datetime最小单位;#prin...
关于Python多线程condition变量的应用
'''所谓条件变量,即这种机制是在满足了特定的条件后,线程才可以访问相关的数据。它使用Condition类来完成,由于它也可以像锁机制那样用,所以它也有acquire方法和release方法,而且它还有wait,notify,notifyAll方法。一个简单的生产消费者模型,通过条件变量的控制产品数量的增减,调用一次生产者产品就是+1,调用一次消费者产品就会-1.使用Condition类来完成,由于它也可以像锁机制那样用,所以它也有acquire方法和release方法,而且它还有wait,notify,notifyAll方法。'''importthreadingimportqueue,time,random#产品类classGoods:def__init__(self):self.count=0defadd(self,num=1):self.count+=numdefsub(self):ifself.count>=0:self.count-=1defempty(self):returnself.count<=0#生产者classProducer(threading.Thr...
Python 快排[pythonnic]
defQS(array):less=[]more=[]iflen(array)<=1:returnarrayhead=array.pop()forxinarray:ifx<=head:less.append(x)else:more.append(x)returnQS(less)+[head]+QS(more)if__name__=='__main__':array=[8,10,9,6,4,16,5,13,26,18,2,45,34,23,1,7,3]print(array)print(QS(array)) ...
python 正则表达式
/正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是用来匹配字符串非常强大的工具,在其他编程语言中同样有正则表达式的概念,Python同样不例外,利用了正则表达式,我们想要从返回的页面内容提取出我们想要的内容就易如反掌了。/正则表达式的大致匹配过程是:1.依次拿出表达式和文本中的字符比较,2.如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。3.如果表达式中有量词或边界,这个过程会稍微有一些不同。下面是Python中正则表达式的一些匹配规则,图片资料来自CSDN(1)数量词的贪婪模式与非贪婪模式正则表达式通常用于在文本中查找匹配的字符串。Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;非贪婪的则相反,总是尝试匹配尽可能少的字符。例如:正则表达式”ab*”如果用于查找”abbbc”,将找到&rdqu...
Python+Selenium与Chrome如何进行完美结合
zhuan:http://blog.51cto.com/starpoint/2102975?cid=704621使用WebDriver在Chrome浏览器上进行测试时,需要从http://chromedriver.storage.googleapis.com/index.html网址中下载与本机chrome浏览器对应的驱动程序,驱动程序名为chromedriver;开篇:最近有学员在学习Selenium时,使用firefox有问题,就想尝试chrome,而其使用crome时又遇到个各种问题..。特整理如下文章供遇到该问题的人参考整篇:如何解决呢?可参考如下..基础环境介绍:python3.5+selenium2.48(或以上)+chrome(版本65.0.3325.181 64位),其中chrome截至到2018年4月份,已经更新到最新版本了... 下载chromedriver.exechromedriver.exe文件是调用chrome的驱动文件,因此该文件的版本要和chrome的版本必须兼容chromedriver.exe下载地址如下:http://...
Python数据可视化-seaborn
zhuanzi:https://www.cnblogs.com/gczr/p/6767175.html Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使用seaborn就能做出很具有吸引力的图。这里实例采用的数据集都是seaborn提供的几个经典数据集,dataset文件可见于Github。本博客只总结了一些,方便博主自己查询,详细介绍可以看seaborn官方API和examplegallery,官方文档还是写的很好的。1 set_style() set()set_style()是用来设置主题的,Seaborn有五个预设好的主题:darkgrid,whitegrid,dark,white,和ticks 默认: darkgrid import matplotlib.pyplot as plt import seaborn as sns sns.set...
[Python] xrange和range的使用区别
zhuan:https://blog.csdn.net/humanking7/article/details/45950967 range 函数说明:range([start,]stop[,step]),根据start与stop指定的范围以及step设定的步长,生成一个列表。 eg:>>>range(10)[0,1,2,3,4,5,6,7,8,9]>>>range(2,10)[2,3,4,5,6,7,8,9]>>>range(2,10,2)[2,4,6,8]>>>type(_)<type'list'> xrange 函数说明:和range 的用法完全相同,但是返回的是一个生成器。 eg:>>>xrange(10)xrange(10)>>>xrange(2,10)xrange(2,10)>>>xrange(2,10,2)xrange(2,10,2)>>>type(_...
安装ipython notebook及基本命令(快捷键)
转载自:http://121.42.47.99/yuenshome/wordpress/?p=2622 目前基本上是Pycharm和ipythonnotebook结合起来做东西,ipythonnotebook不仅仅是因为易于调试代码以及做展示,比方说需要在用到spark的时候每次需要加载sc,就非常的不方便,但用ipythonnotebook只要加载一次,后面就不需要加载了。安装和启动IPythonNotebookIPythonNotebook快捷键关于Jupyter没安装成功(想安装的可以试试参考里第三个链接)参考 之前装了很多次一次成功,后来没再成功过。今天看到一个帖子,两条命令成功了,两条命令: 12sudoapt-getinstallipython-notebook#安装命令。一步到位ipythonnotebook--pylabinline--ip0.0.0.0#启动命令。加载的时候顺便带上pylab库(的...
python中的格式化字符
python中的格式化字符在python中我们会遇到一个问题,问题是如何输出格式化的字符串。我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。在python中,我们用%实现格式化字符串。语法我们举个例子来说明格式化字符串的语法>>>'Hello,%s'%'world''Hello,world'>>>'Hi,%s,youhave$%d.'%('Michael',1000000)'Hi,Michael,youhave$1000000.'在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%,括号可以省略。字符串格式化符号%c格式化字符及其ASCII码%s格式化字符串%d格式化整数%u格式化无符号整型%o格式化无符号八进制数%x格式化无符号十六进制数%X格式化无符号十六进制数(大写)%f格式化浮点数字,可指定小数点后的精度%e用科学计数法格式化浮点数%E作用同%e,用科学计数法格...
python itertools模块实现排列组合
转自:https://blog.csdn.net/specter11235/article/details/71189486一、笛卡尔积:itertools.product(*iterables[,repeat])直接对自身进行笛卡尔积:importitertoolsforiinitertools.product('ABCD',repeat=2):print(''.join(i),end='')输出结果: AAABACADBABBBCBDCACBCCCDDADBDCDD print(”.join(i))这个语句可以让结果直接排列到一起 end=’‘可以让默认的输出后换行变为一个空格两个元组进行笛卡尔积:importitertoolsa=(1,2,3)b=('A','B','C')c=itertools.product(a,b)foriinc:print(i,end='')输出结果: (1,‘A’)(1,‘B’)(1,‘C’)(2,&lsqu...
IPython notebook快捷键(Jupyter notebook)
本文整理了神器IPythonNotebook(或JupyterNotebook)的快捷键功能表。其中我把cell译作代码块,或简称为块。按键功能按键功能Enter进入当前块的编辑模式X剪切选中的代码块Shift+Enter运行当前块并选中下一块C复制选中的代码块Ctrl+Enter运行当前块Shift+V在当前块上方粘贴Alt+Enter运行当前块并在下方插入新块V在当前块下方粘贴Y切换到代码状态Z撤销删除操作M切换到MarkDown状态D,D删除选中的代码块R切换到RawNBConvertShift+M将当前块与下一块合并数字键1到6将当前块第一行变为MarkDown的n级标题S / Ctrl+S保存并设置检查点↑ / K选择上一个代码块L显示/隐藏当前块的代码行号↓ / J选择下一个代码块O显示/隐藏当前块的输出内容A在当前块上方插入新代码块Shift+O显示/隐藏当前块的输出内容的滚动条B在当前块下方插入新代码块Esc / Q关闭弹窗H展示快捷键帮助I,I**打断**kernal运...
理解 Python 中的 *args 和 **kwargs
转自:http://kodango.com/variable-arguments-in-python Python是支持可变参数的,最简单的方法莫过于使用默认参数,例如:deftest_defargs(one,two=2):print'Requiredargument:',oneprint'Optionalargument:',twotest_defargs(1)#result:#Requiredargument:1#Optionalargument:2test_defargs(1,3)#result:#Requiredargument:1#Optionalargument:3当然,本文章的主题并不是讲默认参数,而是另外一种达到可变参数(VariableArgument)的方法:使用*args和**kwargs语法。其中,*args是可变的positionalarguments列表,**kwargs是可变的keywordarguments列表。并且,*args必须位于**kwargs之前,因为positionalarguments必须位于keywordarguments之前。...
python——PIL库的模块介绍
原文:https://blog.csdn.net/zhangziju/article/details/79123275 Image模块是在PythonPIL图像处理中常见的模块,对图像进行基础操作的功能基本都包含于此模块内。如open、save、conver、show…等功能。/Image.open(file)⇒imageImage.open(file,mode)⇒image要从文件加载图像,使用open()函数,在Image模块:1@zhangziju2fromPILimportImage##调用库3im=Image.open("E:mywife.jpg")##文件存在的路径4im.show()需要知道的是在win的环境下im.show的方式为win自带的图像显示应用。打开并确认给定的图像文件。这个是一个懒操作;该函数只会读文件头,而真实的图像数据直到试图处理该数据才会从文件读取(调用load()方法将强行加载图像数据)。如果变量mode被设置,那必须是“r”。用户可以使用一个字符串(表示文件名称的字符串)或者文件对...