Python
文章平均质量分 75
人生苦短 我用Python
hNicholas
这个作者很懒,什么都没留下…
展开
-
使用python查询Elasticsearch并导出所有数据
功能拆解python连接Elasticsearch 查询Elasticsearch打印结果 导出所有结果数据 将所有结果写入csv文件1.打通python与Elasticsearch的通信与python连接Oracle、MySQL差不多思路,这里需要用到Elasticsearch包,没有的赶紧使用pip install elasticsearch来安装。安装成功后,再使用from elasticsearch import Elasticsearch就不会报错了。from elastic转载 2020-08-01 16:44:29 · 1038 阅读 · 0 评论 -
python - @staticmethod和@classmethod的作用与区别
一般来说,要使用某个类的方法,需要先实例化一个对象再调用方法。而使用@staticmethod或@classmethod,就可以不需要实例化,直接类名.方法名()来调用。这有利于组织代码,把某些应该属于某个类的函数给放到那个类里去,同时有利于命名空间的整洁。既然@staticmethod和@classmethod都可以直接类名.方法名()来调用,那他们有什么区别呢从它们的使用上来看,@staticmethod不需要表示自身对象的self和自身类的cls参数,就跟使用函数一样。@class转载 2020-07-20 14:15:52 · 766 阅读 · 0 评论 -
检测Python代码规范--Flake8
Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强。Flake8 是“将 PEP 8、Pyflakes(类似 Pylint)、McCabe(代码复杂性检查器)和第三方插件整合到一起,以检查 Python 代码风格和质量的一个 Python 工具”。与pyLint的功能一样,用于对代码的静态检测。执行 pip install flake8 安装 flake8 ,然后执行 fla转载 2020-06-08 14:53:48 · 3384 阅读 · 0 评论 -
彻底搞懂Python切片操作
一、 Python可切片对象的索引方式包括:正索引和负索引两部分,如下图所示,以list对象a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]为例:二、 Python切片操作的一般方式一个完整的切片表达式包含两个“:”,用于分隔三个参数(start_index、end_index、step)。当只有一个“:”时,默认第三个参数step=1;当一个“:”也没有时,s...转载 2020-02-02 20:29:12 · 328 阅读 · 1 评论 -
Python中ljust,rjust,center和zfill的用法解析
字符串在输出时的对齐:S.ljust(width,[fillchar])#输出width个字符,S左对齐,不足部分用fillchar填充,默认的为空格。S.rjust(width,[fillchar]) #右对齐S.center(width, [fillchar]) #中间对齐S.zfill(width) #把S变成width长,并在右对齐,不足部分用0补足1 >...转载 2020-02-02 17:22:43 · 1025 阅读 · 0 评论 -
python数字处理(math)模块详解
1.math简介复制代码代码如下:>>> import math>>>dir(math) #这句可查看所有函数名列表>>>help(math) #查看具体定义及函数0原型2.常用函数复制代码代码如下:ceil(x) 取顶floor(x) 取底fabs(x) 取绝对值fact转载 2016-04-27 17:19:04 · 1337 阅读 · 0 评论 -
python 字符串常用操作汇总
1、去空格及特殊符号复制代码代码如下:s.strip().lstrip().rstrip(',')2、复制字符串复制代码代码如下:#strcpy(sStr1,sStr2)sStr1 = 'strcpy'sStr2 = sStr1sStr1 = 'strcpy2'print sStr23、连接字符串复制代码代码如下:转载 2016-04-21 18:12:30 · 6059 阅读 · 0 评论 -
自动化测试Appium Python API 中文版
根据appium 1.4.13.1版本整理如有错误请多多指正Appium_Python_Api文档1.contextscontexts(self): Returns the contexts within the current session. 返回当前会话中的上下文,使用后可以识别H5页面的控件 :Usage: driver.co转载 2016-04-21 16:54:06 · 4083 阅读 · 0 评论 -
python字符串/元组/列表/字典互转
#-*-coding:utf-8-*- #1、字典dict = {'name': 'Zara', 'age': 7, 'class': 'First'}#字典转为字符串,返回: {'age': 7, 'name': 'Zara', 'class': 'First'}print type(str(dict)), str(dict)#字典可以转为元组,返回:('age', 'name'转载 2016-04-28 10:13:06 · 373 阅读 · 0 评论 -
python的dict,set,list,tuple应用详解
1.字典(dict)dict 用 {} 包围 dict.keys(),dict.values(),dict.items() hash(obj)返回obj的哈希值,如果返回表示可以作为dict的key del 或 dict.pop可以删除一个item,clear清除所有的内容 sorted(dict)可以把dict排序 dict.get()可以查找没存在的key,dict转载 2016-04-28 10:25:33 · 349 阅读 · 0 评论 -
Python 列表(List)
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。列表是最常用的Python数据类型,它可以作为一个转载 2016-04-28 10:29:40 · 431 阅读 · 0 评论 -
Python 元组
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。如下实例:tup1 = ('physics', 'chemistry', 1997, 2000);tup2 = (1, 2, 3, 4, 5 );tup3 = "a", "b", "c", "d";创建空转载 2016-04-28 10:31:45 · 334 阅读 · 0 评论 -
python 字典
一、什么是字典?字典是Python语言中唯一的映射类型。映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希表。字典对象是可变的,它是一个容器类型,能存储任意个数的Python对象,其中也可包括其他容器类型。字典类型与序列类型的区别:1.存取和访问数据的方式不同。2.序列类型只用数字类型的键(从序列的开转载 2016-04-28 10:41:30 · 314 阅读 · 0 评论 -
Python去掉字符串中空格的方法
我们经常在处理字符串时遇到有很多空格的问题,一个一个的去手动删除不是我们程序员应该做的事情,今天这篇技巧的文章来给大家讲一下,如何用Python去除字符串中的空格。我们先创建一个左右都有N个空格的字符串变量s,看代码:复制代码代码如下:>>> s = “ Nicholas ”>>>去除字符串空格,在Python里面有它的内置方法,不需要我们自己去造轮子了。转载 2016-04-28 11:04:56 · 2636 阅读 · 0 评论 -
Python中的exec、eval使用实例
通过exec可以执行动态Python代码,类似Javascript的eval功能;而Python中的eval函数可以计算Python表达式,并返回结果(exec不返回结果,print(eval("…"))打印None);eval参数是一个字符串,可以把这个字符串当成表达式来求值复制代码代码如下: >>> exec("print(\"hello, world\")转载 2016-04-28 11:21:35 · 4537 阅读 · 1 评论 -
Python 小数点精度控制
基础浮点数是用机器上浮点数的本机双精度(64 bit)表示的。提供大约17位的精度和范围从-308到308的指数。和C语言里面的double类型相同。Python不支持32bit的单精度浮点数。如果程序需要精确控制区间和数字精度,可以考虑使用numpy扩展库。 Python 3.X对于浮点数默认的是提供17位数字的精度。 关于单精度和双精度的通俗解释:转载 2016-04-28 15:35:02 · 16234 阅读 · 0 评论 -
Python的Urllib库的使用(爬虫基础)
1.分分钟扒一个网页下来怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的画面,但是其实是由浏览器解释才呈现出来的,实质它 是一段HTML代码,加 JS、CSS,如果把网页比作一个人,那么HTML便是他的骨架,JS便是他的肌肉,CSS便是它的衣服。所以最重要的部分是存在于HTML中的,下面我 们就写个例子来扒一个网页下来。转载 2016-04-29 11:26:26 · 1571 阅读 · 0 评论 -
python正则表达式
1.了解正则表达式正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是用来匹配字符串非常强大的工具,在其他编程语言中同样有正则表达式的概念,Python同样不例外,利用了正则表达式,我们想要从返回的页面内容提取出我们想要的内容就易如反掌了。转载 2016-04-29 11:34:18 · 541 阅读 · 0 评论 -
Python函数的各种参数用法(含星号参数)
Python中函数的参数有4种形式,分别是:位置或关键字参数(Positional-or-keyword parameter)仅位置的参数(Positional-only parameter)任意数量的位置参数(var-positional parameter)任意数量的关键字参数(var-keyword parameter)第一种:位置或关键字参数这种参数是Python中转载 2016-05-18 11:09:33 · 5730 阅读 · 1 评论 -
Python os模块常用方法
一、os模块概述Python os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。(一语中的)二、常用方法1、os.name输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对于Linux/Unix用户,它是'posix'。2、os.getcwd()函数得到当前工作目录,即当前Python脚本转载 2016-06-15 14:56:40 · 361 阅读 · 0 评论 -
Python中os和shutil模块实用方法集锦
# os 模块os.sep 可以取代操作系统特定的路径分隔符。windows下为 '\\'os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是 'posix'os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径os.getenv() 获取一个环境变量,如果没有返回noneos.p转载 2016-07-08 09:59:36 · 381 阅读 · 0 评论 -
python实现socket通讯
Server:[python] view plain copy print?import socket address = ('127.0.0.1', 31500) s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.bind(address)转载 2016-09-13 10:59:22 · 2088 阅读 · 0 评论 -
python socket编程介绍
Python 提供了两个基本的 socket 模块。 第一个是 Socket,它提供了标准的 BSD Sockets API。 第二个是 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发。下面讲的是Socket模块功能1、Socket 类型套接字格式:socket(family,type[,protocal]) 使用转载 2016-08-23 11:33:32 · 444 阅读 · 0 评论 -
python socket ssl编程
http://blog.csdn.net/hongqun/article/details/6833412首先,使用如下命令生成证书和key:openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem接下来实现服务器:[python] view plain copy转载 2016-09-22 18:30:54 · 4291 阅读 · 0 评论 -
TLS,SSL,HTTPS with Python
需要了解的背景知识:术语 HTTPS,SSL,TLS长连接与短连接的关系了解 CA 证书基本流程一.术语扫盲1.什么是SSL?SSL(Secure Sockets Layer, 安全套接字),因为原先互联网上使用的 HTTP 协议是明文的,存在很多缺点——比如传输内容会被偷窥(嗅探)和篡改。发明 SSL 协议,就是为了解决这些问题。2.那么什么是TLS呢?转载 2016-09-20 15:34:26 · 2601 阅读 · 0 评论 -
Python中的 __all__和__path__ 解析
Python以目录来组织模块, 就是所谓的包. 用包的一大好处: 可以解决名字空间冲突的问题, 即文件重名问题.下面主要说3点:1. 如何使一个目录变成包,如何import目录下放一个__init__.py文件(内容可以为空), import包内模块的时候使用"."分割, 比如import Apackage.Amodule2. __init__.py的__all__变量__al转载 2016-11-16 09:44:55 · 934 阅读 · 0 评论 -
Python中try...except...else的用法
本篇总结了Python中try...except...else的用法。try: except : #如果在try部份引发了名为'name'的异常,则执行这段代码else: #如果没有异常发生,则执行这段代码例如,我想编写一个小游戏,让用户猜给定范围内的整数,并根据用户的每次输入,提示“大了”,”小了“,直转载 2016-11-28 17:29:17 · 679 阅读 · 0 评论 -
主机不能访问虚拟机中的web服务【解决方案】
情况是这样的:在虚拟机visualBox里安装了centos7系统,并且在该系统里运行了一个web服务,想通过宿主机或者外网来访问该服务,总是无法访问(虚拟机网卡已配置成桥接):宿主机【win7】ip:虚拟机【CentOS7】ip:彼此能互相ping通,虚拟机中启动了一个简单的web服务:一个简单的只要访问就能得到一句简单的响应:转载 2016-11-16 15:34:27 · 1826 阅读 · 0 评论 -
openstack之虚拟机的创建流程
本文试图详细地描述openstack创建虚拟机的完整过程,从用户发起请求到虚拟机成功运行,包括客户端请求的发出、keystone身份验证、nova-api接收请求、nova-scheduler调度、nova-computer创建、nova-network分配网络。对于每一个模块在创建虚拟机的过程中所负责的功能和执行的操作,进行较为详细描述和讨论。为了方便描述,本文假设所有的服务ip地址为l转载 2016-11-17 10:48:37 · 5459 阅读 · 2 评论 -
OpenStack常用命令
1. rabbitmq 消息队列查看rabbitmq 队列rabbitmqctl list_queues服务rabbitmq-server2. keystone查看keystone的用户keystone user-list查看keystone endpointkeystone endpoint-li转载 2016-11-14 14:34:47 · 349 阅读 · 0 评论 -
python中多进程+协程的使用以及为什么要用它
前面讲了为什么Python里推荐用多进程而不是多线程,但是多进程也有其自己的限制:相比线程更加笨重、切换耗时更长,并且在python的多进程下,进程数量不推荐超过CPU核心数(一个进程只有一个GIL,所以一个进程只能跑满一个CPU),因为一个进程占用一个CPU时能充分利用机器的性能,但是进程多了就会出现频繁的进程切换,反而得不偿失。不过特殊情况(特指IO密集型任务)下,多线程是比多进程好用转载 2016-11-30 13:53:29 · 1248 阅读 · 0 评论 -
Python进程、线程、协程详解
进程与线程的历史我们都知道计算机是由硬件和软件组成的。硬件中的CPU是计算机的核心,它承担计算机的所有任务。 操作系统是运行在硬件之上的软件,是计算机的管理者,它负责资源的管理和分配、任务的调度。 程序是运行在系统上的具有某种功能的软件,比如说浏览器,音乐播放器等。 每次执行程序的时候,都会完成一定的功能,比如说浏览器帮我们打开网页,为了保证其独立性,就需要一个专门的管理和控制执行程序的数转载 2016-11-30 14:10:50 · 774 阅读 · 0 评论 -
Python列表解析式
有时候,一个编程设计模式使用得十分普遍,甚至会逐步形成自己独特的语法。Python编程语言中的列表解析式(list comprehension)就是这类语法糖(syntactic sugar)的绝佳代表。Python中的 列表解析式 是个伟大的发明,但是要掌握好这个语法则有些难,因为它们并是用来解决全新的问题:只是为解决已有问题提供了新的语法。 接下来,我们一起来学习什么是列表解析转载 2016-11-30 14:55:33 · 1602 阅读 · 0 评论 -
浅析python 中__name__ = '__main__' 的作用
浅析python 中__name__ = '__main__' 的作用很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = '__main__' 的作用,到底干嘛的?有句话经典的概括了这段代码的意义:“Make a s转载 2016-11-15 09:17:15 · 283 阅读 · 0 评论 -
Python通过websocket与js客户端通信示例
这里,介绍如何使用 Python 与前端 js 进行通信。websocket 使用 HTTP 协议完成握手之后,不通过 HTTP 直接进行 websocket 通信。于是,使用 websocket 大致两个步骤:使用 HTTP 握手,通信。js 处理 websocket 要使用 ws 模块; Python 处理则使用 socket 模块建立 TCP 连接即可,比一般的 so转载 2016-11-30 20:22:04 · 10794 阅读 · 0 评论 -
qcow2、raw、vmdk等镜像格式的比较和基本转换
目前主要有那些格式来作为虚拟机的镜像:raw(default) the raw format is a plain binary image of the disc image, and is very portable. On filesystems that support sparse files, images in this format only use t转载 2016-11-21 09:58:59 · 1423 阅读 · 0 评论 -
OpenStack云平台三种网络模式
•Flat模式 1)指定一个子网,规定虚拟机能使用的ip范围,也就是一个ip池( 分配ip不会超过这个范围,也就是配置里面的fixed_range,比如10.0.0.1/27,那么可用ip就有32个; 这个网络是可以改变的,比如配置好节点nova.conf和interfaces后,nova-manage network delete 10.0.0.1/27 1 32;nova-ma转载 2016-11-21 18:39:43 · 19386 阅读 · 0 评论 -
openstack网络基础:交换机、路由器、DHCP
我们在使用openstack的过程中,会遇到创建虚拟机路由器、交换机等,那么1.他们的作用到底是什么?2.DHCP为什么会产生,它的作用是什么?个人总结:交换机:一般用在同一网段,工作在数据链路层,例如我们在同一间办公室,则使用的是交换机。路由器则是用在不同网段也就是说,一个办公室上网,可以使用交换机,只要插上网口就可以上网了。路由器:则是为不同的办公室提供上网转载 2016-11-21 18:44:25 · 1991 阅读 · 0 评论 -
从ISO创建实例、实例生成快照,创建镜像(基于openstack kilo平台、KVM虚拟化)
摘要: openstack从ISO镜像安装虚拟机及生成快照的方法及注意事项ISO创建实例从ISO创建实例有两个关键配置:云主机类型flavor和ISO镜像参数。云主机类型:openstack使用ISO镜像创建虚拟机实例时,会将选择的云主机类型flavor中的根磁盘(Disk)设置为cdrom,作为ISO的启动的光驱设备,用于OS的安装源;临时磁盘(OS-FLV-EXT-DATA转载 2016-11-22 14:32:37 · 3525 阅读 · 0 评论 -
python关键字and和or用法实例
python 中的and从左到右计算表达式,若所有值均为真,则返回最后一个值,若存在假,返回第一个假值。or也是从左到有计算表达式,返回第一个为真的值。复制代码代码如下:IDLE 1.2.4>>>'a'and'b''b'>>>''and'b'''>>>'a'or'b''a'>>>''or'b''b'类似三目表达式的用法:b转载 2016-12-07 09:34:14 · 578 阅读 · 0 评论