python基础5-字典数据类型字典字典定义、创建字典是一种可变容器类型,且可以存储任意类型对象。字典和列表的最大的区别是字典强调的是“键值对”,key与value一一对应,字典中的存放顺序并不重要,重要的是“键”和“值”的对应关系。在字典中,要求key是唯一的,且不可变的。所以字典的特点如下:查找速度快key-value序对没有顺序key键不可变且唯一字典的创建,使用{},每个键值对用:隔开,每对之间用,分割。还有使用dict和使用fromkeys的方法
系统 2019-09-27 17:48:21 2126
rpclib是一个非常好用的pythonwebservice库,可以动态的生成wsdl,不过这个项目已经基本停止,并被一个新的项目取代spyne,由于旧的项目工作已经比较稳定,所以我没有贸然升级到spyne。我在rpclib编写service方法时,遇到一个奇怪的错误:访问wsdl(http://localhost:9898/?wsdl)页面,返回502BadGateway。在日志中看到如下错误信息:复制代码代码如下:ValueError:Allstrin
系统 2019-09-27 17:48:07 2126
在任何语言中,都会规定某些对象(属性、方法、函数、类等)只能够在某个范围内访问,出了这个范围就不能访问了。这是“公”、“私”之分。此外,还会专门为某些特殊的东西指定一些特殊表示,比如类的名字就不能用class,def等,这就是保留字。除了保留字,python中还为类的名字做了某些特殊准备,就是“专有”的范畴。私有函数在某些时候,会看到有一种方法命名比较特别,是以“__”双划线开头的,将这类命名的函数/方法称之为“私有函数”。所谓私有函数,就是:私有函数不可
系统 2019-09-27 17:47:33 2126
很多开发人员在刚开始学Python时,都考虑过像c++那样来实现singleton模式,但后来会发现c++是c++,Python是Python,不能简单的进行模仿。Python中常见的方法是借助global变量,或者class变量来实现单件。本文就介绍以decorator来实现singleton模式的方法。示例代码如下:##-----------------------codebegin-----------------------#-*-coding:u
系统 2019-09-27 17:47:23 2126
0x00marshalmarshal使用的是与Python语言相关但与机器无关的二进制来读写Python对象的。这种二进制的格式也跟Python语言的版本相关,marshal序列化的格式对不同的版本的Python是不兼容的。marshal一般用于Python内部对象的序列化。一般地包括:基本类型booleans,integers,floatingpointnumbers,complexnumbers序列集合类型strings,bytes,bytearray
系统 2019-09-27 17:47:22 2126
阅读目录tcp协议:流式协议(以数据流的形式通信传输)、安全协议(收发信息都需收到确认信息才能完成收发,是一种双向通道的通信)tcp协议在OSI七层协议中属于传输层,它上承用户层的数据收发,下启网络层、数据链路层、物理层。可以说很多安全数据的传输通信都是基于tcp协议进行的。为了让tcp通信更加方便需要引入一个socket模块(将网络层、数据链路层、物理层封装的模块),我们只要调用模块中的相关接口就能实现传输层下面的繁琐操作。简单的tcp协议通信模板:(需
系统 2019-09-27 17:47:19 2126
isdigit()方法检查字符串是否只包含数字(全由数字组成)。语法以下是isdigit()方法的语法:str.isdigit()参数NA返回值如果字符串中的所有字符都是数字,并至少有一个字符此方法返回true,否则返回false。例子下面的例子显示了isdigit()方法的使用。#!/usr/bin/pythonstr="123456";#Onlydigitinthisstringprintstr.isdigit();str="thisisstringe
系统 2019-09-27 17:47:18 2126
在python中有很多字符串连接方式,今天就在这里具体总结一下:①.最原始的字符串连接方式:str1+str2②.python新字符串连接语法:str1,str2③.奇怪的字符串方式:str1str2④.%连接字符串:‘name:%s;sex:'%('tom','male')⑤.字符串列表连接:str.join(some_list)下面具体分析一下:第一种,想必只要是有编程经验的人,估计都知道,直接用“+”来连接两个字符串:'Jim'+'Green'='J
系统 2019-09-27 17:46:32 2126
目录一、Python进阶实战之三级菜单1.1面条版1.2文艺青年版一、Python进阶实战之三级菜单打印省、市、县三级菜单可返回上一级可随时退出程序1.1面条版menu={'北京':{'海淀':{'五道口':{'soho':{},'网易':{},'google':{}},'中关村':{'爱奇艺':{},'汽车之家':{},'youku':{},},'上地':{'百度':{},},},'昌平':{'沙河':{'老男孩':{},'北航':{},},'天通苑':
系统 2019-09-27 17:45:30 2126
字符串--不可改变的序列如同大多数高级编程语言一样,变长字符串是Python中的基本类型。Python在“后台”分配内存以保存字符串(或其它值),程序员不必为此操心。Python还有一些其它高级语言没有的字符串处理功能。在Python中,字符串是“不可改变的序列”。尽管不能“按位置”修改字符串(如字节组),但程序可以引用字符串的元素或子序列,就象使用任何序列一样。Python使用灵活的“分片”操作来引用子序列,字符片段的格式类似于电子表格中一定范围的行或列
系统 2019-09-27 17:38:37 2126
字典由多个键及与其对应的值构成的对组成(把键值对成为项),每个键和它的值之间用冒号(:)隔开,项之间用逗号(,)隔开,而整个字典由一对大括号括起来。空字典由两个大括号组成:{}dict函数可以用dict函数,通过其他映射或者(键,值)这样的序列对建立字典复制代码代码如下:>>>items=[('name','Gumby'),('age',42)]>>>d=dict(items)>>>d{'age':42,'name':'Gumby'}>>>d['name'
系统 2019-09-27 17:38:11 2126
在Python类中规定,函数的第一个参数是实例对象本身,并且约定俗成,把其名字写为self。其作用相当于java中的this,表示当前类的对象,可以调用当前类中的属性和方法。class是面向对象的设计思想,instance(也即是object,对象)是根据class创建的。一个类(class)应该包含数据和操作数据的方法,通俗来讲就是属性和函数(即调用方法)。类class中为啥用使用self?在类的代码(函数)中,需要访问当前的实例中的变量和函数,即访问I
系统 2019-09-27 17:37:38 2126
在编写计算机程序时,通常能够区分正常和异常(不正常)情况。异常事件可能是错误(如试图除以零),也可能是通常不会发生的事情。Python使用异常对象来表示异常状态,并在遇到错误时引发异常。异常对象未被处理(或捕获)时,程序将终止并显示一条错误消息(traceback)。#试图除以零的报错print(1/0)#Traceback(mostrecentcalllast):#print(1/0)#ZeroDivisionError:divisionbyzero正如
系统 2019-09-27 17:56:38 2125
>>>fromsysimportargv>>>import这是将Python的功能引入你的脚本方法,如果我们学习过C#或者Java等语言,在C#中我们需要引入命名空间,引入类库,Java也一样,我们需要针对我们需要使用的函数或者对象引入包,Python语言也一样,不会将所用功能都给我们,我们需要什么就需要引入什么。在Python中,我们对引入的包称之为:模组(modules),或者叫库(libraries)argv是什么呢?argv是sys模块下的方法用于
系统 2019-09-27 17:56:22 2125
1、概述1.1场景我们在使用Python中的方法method时,经常会看到参数中带有self,但是我们也没对这个参数进行赋值,那么这个参数到底是啥意思呢?2、知识点2.1成员函数(m)和普通方法(f)Python中的"类方法"必须有一个额外的第一个参数名称(名称任意,不过推荐self),而"普通方法"则不需要。m、f、c都是代码自动提示时的左边字母(method、function、class)#-*-coding:utf-8-*-classTest(obj
系统 2019-09-27 17:56:05 2125