迭代器与可迭代对象概念迭代器:是访问数据集合内元素的一种方式,一般用来遍历数据,但是他不能像列表一样使用下标来获取数据,也就是说迭代器是不能返回的。Iterator:迭代器对象,必须要实现next魔法函数Iterable:可迭代对象,继承Iterator,必须要实现iter魔法函数比如:fromcollectionsimportIterable,Iteratora=[1,2,3]print(isinstance(a,Iterator))print(isin
系统 2019-09-27 17:50:00 1982
欢迎添加华为云小助手微信(微信号:HWCloud002或HWCloud003),输入关键字“加群”,加入华为云线上技术讨论群;输入关键字“最新活动”,获取华为云最新特惠促销。华为云诸多技术大咖、特惠活动等你来撩!超神利器…这款工具在上篇文章当Python遇到Andriod手机,那么,万物皆可盘后,就开始准备了。为什么?首先,Qpython不支持lxml这个模块,而了解python爬虫的都知道很多爬虫的html解析都是依赖该模块的,即便Qpython的文章中
系统 2019-09-27 17:49:58 1982
文件操作是开发中经常遇到的场景,那么如何判断一个对象是文件对象呢?下面我们总结了3种常见的方法。方法1:比较类型第一种方法,就是判断对象的type是否为file>>>fp=open(r"/tmp/pythontab.com")>>>type(fp)>>>type(fp)==fileTrue注意:该方法对于从file继承而来的子类不适用,看下面的实例classfileDetect(file):pass#中间代码无所谓,直接跳过不处理fp2=fileDetec
系统 2019-09-27 17:49:34 1982
python中的axis究竟是如何定义的呢?他们究竟代表是DataFrame的行还是列?考虑以下代码:>>>df=pd.DataFrame([[1,1,1,1],[2,2,2,2],[3,3,3,3]],\columns=["col1","col2","col3","col4"])>>>dfcol1col2col3col4011111222223333如果我们调用df.mean(axis=1),我们将得到按行计算的均值>>>df.mean(axis=1)0
系统 2019-09-27 17:49:31 1982
前言使用python实现设计模式中的单例模式。单例模式是一种比较常用的设计模式,其实现和使用场景判定都是相对容易的。本文将简要介绍一下python中实现单例模式的几种常见方式和原理。一方面可以加深对python的理解,另一方面可以更加深入的了解该模式,以便实际工作中能更加灵活的使用单例设计模式。本文将介绍常见的实现单例模式的几种方式,这里暂不考虑多线程的情况。为了准备该篇博文,之前写了几篇相关的文章依次完整的介绍了相关的概念,下面会在需要的时候给出链接。装
系统 2019-09-27 17:48:26 1982
matplotlib是功能十分强大的绘制二维图形的Python模块,它用Python语言实现了MATLAB画图函数的易用性,同时又有非常强大的可定制性。它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。它的文档相当完备,并且Gallery页面中有上百幅缩略图,打开之后都有源程序。因此如果你需要绘制某种类型的图,只需要在这个页面中浏览、复制、粘贴一下,基本上都能搞定!实例代码如下:
系统 2019-09-27 17:47:56 1982
str='pythonStringfunction'生成字符串变量str='pythonStringfunction'字符串长度获取:len(str)例:print'%slength=%d'%(str,len(str))字母处理全部大写:str.upper()全部小写:str.lower()大小写互换:str.swapcase()首字母大写,其余小写:str.capitalize()首字母大写:str.title()print'%slower=%s'%(s
系统 2019-09-27 17:46:33 1982
斐波那契数列当年,典型的递归题目,斐波那契数列还记得吗?deffib(n):ifn==1orn==2:return1else:returnfib(n-1)+fib(n-2)当然,为了程序健壮性,加上try...except...deffib(n):ifisinstance(n,int):print('兄弟,输入正整数哈')returntry:ifn==1orn==2:return1elifn<=0:print('兄弟别输入0或负数呀')else:retur
系统 2019-09-27 17:46:24 1982
假设在python中有一字典如下:x={‘a':'1,2,3',‘b':'2,3,4'}需要合并为:x={‘c':'1,2,3,4'}需要做到三件事:1.将字符串转化为数值列表2.合并两个列表并添加新的键值3.去除重复元素第1步通过常用的函数eval()就可以做到了,第2步需要添加一个键值并添加元素,第3步利用set集合的性质可以达到去重的效果,不过最后需要再将set集合转化为list列表。代码如下:x={'a':'1,2,3','b':'2,3,4'}x
系统 2019-09-27 17:45:34 1982
变量是拥有匹配对象的名字(标识符)。命名空间是一个包含了变量名称们(键)和它们各自相应的对象们(值)的字典。一个Python表达式可以访问局部命名空间和全局命名空间里的变量。如果一个局部变量和一个全局变量重名,则局部变量会覆盖全局变量。每个函数都有自己的命名空间。类的方法的作用域规则和通常函数的一样。Python会智能地猜测一个变量是局部的还是全局的,它假设任何在函数内赋值的变量都是局部的。因此,如果要给全局变量在一个函数里赋值,必须使用global语句。
系统 2019-09-27 17:38:10 1982