#列表、元祖#字典#集合、frozenset#字符串#堆栈:先进后出#队列:先进先出FIFOfromcollectionsimportnamedtuplePoint=namedtuple('point',['x','y','z'])p1=Point(1,2,3)p2=Point(3,2,1)print(p1.x)print(p1.y)print(p1,p2)#花色和数字Card=namedtuple('card',['suits','number'])c1
系统 2019-09-27 17:57:49 2343
基本上,lambdas以及map,reduce和filter为python提供了函数式编程能力。让我们看看他们是什么。map:map函数采用iterable(list,tuple,set)并将函数应用于列表中的每个元素。让我们看一个例子来看看它是如何工作的。任务1:给定一个整数列表,编写代码,以方的所有数s在列表中。deffunc(num):“””对给定数字进行平方的函数“””returnnum*numl=[1,2,3,4,5,6]#map采用一个函数并应
系统 2019-09-27 17:56:26 2343
摘要在进行数据分析时,我们经常需要对DataFrame去重,但有时候也会需要只保留重复值。这里就简单的介绍一下对于DataFrame去重和取重复值的操作。创建DataFrame这里首先创建一个包含一行重复值的DataFrame。DataFrame去重,可以选择是否保留重复值,默认是保留重复值,想要不保留重复值的话直接设置参数keep为False即可。3.取DataFrame重复值。大多时候我们都是需要将数据去重,但是有时候很我们也需要取重复数据,这个时候我
系统 2019-09-27 17:56:02 2343
Linux终端中的操作均是使用命令行来进行的。因此,对于小白来说,熟记几个基本的命令行和使用方法能够较快的在Linux命令行环境中将python用起来。打开命令行窗口打开命令行窗口的快捷键如下:Ctrl+Alt+t关闭名命令行窗口关闭命令行窗口的快捷键如下:Ctrl+d进入python环境在命令行中直接输入python即进入了python的编辑环境。进入环境后最明显的提示是:光标由~$变成>>>。退出python环境使用ctrl+d的方式退出python环
系统 2019-09-27 17:56:01 2343
一、Linux环境和Windows环境下个人推荐推荐使用geany,个人认为这个编辑器优于pycharm,pycharm破解起来异常麻烦,而且它体积小,能够运行几乎所有的程序(而无需终端来运行)。也可以选择anaconda作为geany当做python的编辑器Linux中安装的命令如下:sudoapt-getgeanywindows中,可以点击链接https://www.geany.org/Download/Releases,然后找到Releases目录下
系统 2019-09-27 17:55:10 2343
阻塞IO(blockingIO)在linux中,默认情况下所有的socket都是blocking,一个典型的读操作流程大概是这样:当用户进程调用了recvfrom这个系统调用,kernel内核就开始了IO的第一个阶段:准备数据。对于networkio(网络io)来说,很多时候数据在一开始还没有到达(比如,还没有收到一个完整的UDP包),这个时候kernel(内核)就要等待足够的数据到来。等着对方把数据放到自己操作系统内存而在用户进程这边,整个进程会被阻塞。
系统 2019-09-27 17:53:03 2343
TheZenofPython,byTimPetersPython之禅byTimPetersBeautifulisbetterthanugly.优美胜于丑陋(Python以编写优美的代码为目标)Explicitisbetterthanimplicit.明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似)Simpleisbetterthancomplex.简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现)Complexisbetterthanc
系统 2019-09-27 17:52:28 2343
最近学习了一点python,那就试着做一做简单的编程练习。首先是这个编程的指导图,如下:对的,类似一个简单区块链的模拟。代码如下:classDaDaBlockCoin:#index索引,timestamp时间戳,data交易记录,self_hash交易hash,last_hash,上个hashdef__init__(self,idex,timestamp,data,last_hash):self.idex=idexself.timestamp=timest
系统 2019-09-27 17:49:38 2343
0x01OpCodeopcode又称为操作码,是将python源代码进行编译之后的结果,python虚拟机无法直接执行human-readable的源代码,因此python编译器第一步先将源代码进行编译,以此得到opcode。例如在执行python程序时一般会先生成一个pyc文件,pyc文件就是编译后的结果,其中含有opcode序列。如何查看一个函数的OpCode?defa():if1==2:print("flag{****}")print"Opcodeo
系统 2019-09-27 17:48:42 2343
希尔排序思想:算法先将要排序的一组数按某个增量d分成若干组,每组中记录的下标相差d.对每组中全部元素进行排序,然后再用一个较小的增量对它进行,在每组中再进行排序。当增量减到1时,整个要排序的数被分成一组,排序完成。一般的初次取序列的一半为增量,以后每次减半,直到增量为1。defshell_sort(list):n=len(list)gap=n//2new_list=[]whilegap>1:foriinrange(gap):iflist[i]>list[i
系统 2019-09-27 17:48:16 2343