Python

浅析Python 中几种字符串格式化方法及其比较

起步在Python中,提供了很多种字符串格式化的方式,分别是%-formatting、str.format和f-string。本文将比较这几种格式化方法。%-格式化这种格式化方式来自于C语言风格的sprintf形式:name="weapon""Hello,%s."%nameC语言的给实话风格深入人心,通过%进行占位。为什么%-formatting不好不好的地方在于,如果字符串较长或较多的参数,那么可读性就变得很差。str.format格式化PEP-3101

系统 2019-09-27 17:50:28 2250

Python

python实现蒙特卡罗方法教程

蒙特卡罗方法是一种统计模拟方法,由冯・诺依曼和乌拉姆提出,在大量的随机数下,根据概率估计结果,随机数据越多,获得的结果越精确。下面我们将用python实现蒙特卡罗方法。1.首先我们做一个简单的圆周率的近似计算,在这个过程中我们要用到随机数,因此需要先使用importnumpyasnp导入numpy库。2.代码实现:importnumpyasnptotal=8000000count=0foriinrange(total):x=np.random.rand()

系统 2019-09-27 17:50:01 2250

Python

Python实现对json文件的读写

目录1.从json文件读取数据2.将数据写入json文件方法一:使用dump()函数方法二:使用dumps()函数完整代码流程json文件Python脚本运行结果控制台base1.jsonbase2.json1.从json文件读取数据使用load()函数获取json文件中的数据,并转换为Python的内置数据类型(列表或字典)。下面自定义的函数read_json_file()实现了读取json文件数据的功能:defread_json_file(url):"

系统 2019-09-27 17:49:56 2250

Python

Python项目 基于Scapy实现SYN泛洪攻击的方法

python3版本的Scapy--Scapy3k来实现一个简单的DDos。首先实现SYN泛洪攻击(SYNFlood,是一直常用的DOS方式之一,通过发送大量伪造的TCP连接请求,使被攻击主机资源耗尽的攻击方式)。TCP三次握手的过程在这里就不再赘述,SYN攻击则是客户端向服务器发送SYN报文之后就不再响应服务器回应的报文,由于服务器在处理TCP请求时,会在协议栈留一块缓冲区来存储握手的过程,如果超过一定的时间没有接收到客户端的报文,那么本次连接在协议栈中存

系统 2019-09-27 17:46:22 2250

Python

Python 简单的实现二分查找

defBinarySearch(alist,item):'''简单二分查找:paramalist::paramitem::return:'''first=0last=len(alist)-1found=Falsewhilefirst<=lastandnotfound:midpoint=(first+last)//2ifalist[midpoint]==item:found=Trueelse:ifitem

系统 2019-09-27 17:57:26 2249

Python

python同步两个文件夹下的内容

本文实例为大家分享了python同步两个文件夹下的内容,供大家参考,具体内容如下importosimportshutilimporttimeimportloggingimportfilecmp#日志文件配置log_filename='synchro.log'#日志输出格式化log_format='%(filename)s[%(asctime)s][%(levelname)s]%(message)s'logging.basicConfig(format=lo

系统 2019-09-27 17:57:02 2249

Python

Python Matplotlib 基于networkx画关系网络图

前言昨天才开始接触,鼓捣了一个下午,接下来会持续更新,如果哪里有错误的地方,望各位大佬指出,谢谢!数据描述两个文件,一个文件包含了网络图的节点,节点存在类别(0,1,2,3)四类,但是0类别舍去,不画出;另一个文件包含了网络图的边,数据基本特征如下:图1中,id表示节点,b是类别;图2中,两个数字表示边连接的两个点。Networkx安装我的系统是MacOS,直接在terminal输入sudopipinstallnetworkx就可以安装,由于代码中涉及几个

系统 2019-09-27 17:56:07 2249

Python

跟老齐学Python之不要红头文件(1)

这两天身体不给力,拖欠了每天发讲座的约定,看官见谅。红头文件,是某国特别色的东西,在python里不需要,python里要处理的是计算机中的文件,包括文本的、图片的、音频的、视频的等等,还有不少没见过的扩展名的,在linux中,不是所有的东西都被保存到文件中吗?文件,在python中,是一种对象,就如同已经学习过的字符串、数字等一样。先要在交互模式下查看一下文件都有哪些属性:>>>dir(file)['__class__','__delattr__','_

系统 2019-09-27 17:55:59 2249

Python

python有序字典

最近的django开发中用到了有序字典,所以研究了一下,以下。示例:有序字典和通常字典类似,只是它可以记录元素插入其中的顺序,而一般字典是会以任意的顺序迭代的。普通字典:由上面的结果可以看出对普通字典进行遍历,输出结果是无序的。下面是有序字典(需要导入collections包):对比两种输出结果,不难发现,有序字典可以按字典中元素的插入顺序来输出。上面两个例子之所以字典中插入元素,而不是一开始就将字典中的元素定义好,是因为有序字典的作用只是记住元素插入顺序

系统 2019-09-27 17:55:00 2249

Python

零基础写python爬虫之打包生成exe文件

1.下载pyinstaller并解压(可以去官网下载最新版):https://github.com/pyinstaller/pyinstaller/2.下载pywin32并安装(注意版本,我的是python2.7):https://pypi.python.org/pypi/pywin323.将项目文件放到pyinstaller文件夹下面(我的是baidu.py):4.按住shift键右击,在当前路径打开命令提示行,输入以下内容(最后的是文件名):pytho

系统 2019-09-27 17:54:46 2249

Python

Python数据分析之思维导图汇总

关于Python数据分析,其实网上能够找到的学习资源很多,主要分为两类:一类是提供各种资源的推荐,比如书单、教程、以及学习的先后顺序;另一类是提供具体的学习内容,知识点或实际案例。但很多繁琐而又杂乱的内容,除了给初学者增加理解和认识的噪音外,真正能够起到明确的方向指引导的,确实不多。以至于很多人一开始没有明确的方向就一头扎进去,学了很久却不知道自己到底在学什么,或者自己学了很久不知道能够做什么。学习一门技术之前,你应该知道,你想要达成的目标是什么样的。也就

系统 2019-09-27 17:53:42 2249

Python

python找出一个列表中相同元素的多个索引实例

定义:X=[1,2,3,1,4]任务:找出元素为1的索引Solution:#如果直接用X.index(1),只能得到0这一个索引,而我们需要所有索引.l=len(X)zip_list=zip(*(range(l),X))id1=[z[0]fori,zinenumerate(zip_list)ifz[1]==1]#或者更简单的id1=[ifori,xinenumerate(X)ifx==1]以上这篇python找出一个列表中相同元素的多个索引实例就是小编分享

系统 2019-09-27 17:53:25 2249

Python

Python数据类型详解——列表

Python数据类型详解——列表在“Python之基本数据类型概览”一节中,大概介绍了列表的基本用法,本节我们详细学一下列表。如何定义列表:在[]内以英文里输入法的逗号,,按照索引,存放各种数据类型,每个位置代表一个元素。回顾一下列表的特点:1、可存放多个值。2、按照从左到右的顺序定义列表元素,下标从0开始顺序访问,是有序的。3、可修改指定索引位置对应的值,可变。一、列表元素的增加操作1、追加用append方法将数据追加到列表的尾部names=['Kwan

系统 2019-09-27 17:53:06 2249

Python

Python hexstring-list-str之间的转换方法

在Python操作数据内容时,多数情况下可能遇到下面3种类型的数据处理:hexstring如:'1C532145697A8B6F'str如:'\x1C\x53\x21\x45\x69\x7A\x8B\x6F'list如:[0x1C,0x53,0x21,0x45,0x69,0x7A,0x8B,0x6F]各种第三方模块(如pyDes),或者自己写的接口中,可能存在由于类型不统一需要在这3种数据中来回切换的情况。需要用到的核心的方法如下:list()将对象转换为

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