异常:当Python检测到⼀个错误时,解释器就⽆法继续执⾏了,会出现⼀些错误的提示,这就是所谓的"异常"。看如下示例:print('-----test--1---')open('123.txt','r')print('-----test--2---')打开⼀个不存在的⽂件123.txt,当找不到123.txt⽂件时,就会抛出给我们⼀个IOError类型的错误,Nosuchfileordirectory:123.txt(没有123.txt这样的⽂件或⽬录)异
系统 2019-09-27 17:48:33 2070
importitchatimportrequests#获取价格defget_price(symbol):request=requests.get("https://api.hbdm.com/api/v1/contract_index?symbol="+symbol).json()price=request["data"]foriteminprice:return(item['index_price'])#获取列表中字典的值#获取并发送消息@itchat.m
系统 2019-09-27 17:48:11 2070
map函数map(func,*iterables)-->mapobject参数function传的是一个函数名,可以是python内置的,也可以是自定义的。参数iterable传的是一个可以迭代的对象,例如列表,元组,字符串这样的。处理序列中的的每个元素,得到的结果是一个‘列表+’,该列表的元素个数及位置与原来的一样;a=(1,2,3,4,5)b=[1,2,3,4,5]la=map(lambdax:x+1,a)lb=map(lambdax:x**2,b)p
系统 2019-09-27 17:48:02 2070
virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:1.在没有权限的情况下安装新套件2.不同应用可以使用不同的套件版本3.套件升级不影响其他应用安装复制代码代码如下:sudoapt-getinstallpython-virtualenv使用方法[code]virtualenv[虚拟环境名称]如,创建**ENV**的虚拟环境复制代码代码如下:virtualenvENV默认情况下,虚拟环境会依赖系统环境中的sitep
系统 2019-09-27 17:47:21 2070
Python中有一个有趣的语法,只要定义类型的时候,实现__call__函数,这个类型就成为可调用的。换句话说,我们可以把这个类型的对象当作函数来使用,相当于重载了括号运算符。classg_dpm(object):def__init__(self,g):self.g=gdef__call__(self,t):return(self.g*t**2)/2计算地球场景的时候,我们就可以令e_dpm=g_dpm(9.8),s=e_dpm(t)。classAnima
系统 2019-09-27 17:45:33 2070
一:dict和set是python里面两种常用的数据结构,其底层是用哈希表实现的,类比java里面的HashSet和HashMap。dict和set的查询等操作的时间复杂度一般为O(1),远远好于一般数组的O(n)。之所以会这样,是因为dict和set维护这一张哈希表,通过哈希函数,可以快速定位到元素所在的位置。老版本的python的哈希表数据结构:--+-------------------------------+|哈希值(hash)键(key)值(v
系统 2019-09-27 17:45:28 2070
需求有一个抽奖应用,从所有参与的用户抽出K位中奖用户(K=奖品数量),且要根据每位用户拥有的抽奖码数量作为权重。如假设有三个用户及他们的权重是:A(1),B(1),C(2)。希望抽到A的概率为25%,抽到B的概率为25%,抽到C的概率为50%。分析比较直观的做法是把两个C放到列表中抽选,如[A,B,C,C],使用Python内置的函数random.choice[A,B,C,C],这样C抽到的概率即为50%。这个办法的问题是权重比较大的时候,浪费内存空间。更
系统 2019-09-27 17:45:25 2070
Python元组元组是另一个数据类型,类似于List(列表)。元组用"()"标识。内部元素用逗号隔开。但是元素不能二次赋值,相当于只读列表。#!/usr/bin/python#-*-coding:UTF-8-*-tuple=('abcd',786,2.23,'john',70.2)tinytuple=(123,'john')printtuple#输出完整元组printtuple[0]#输出元组的第一个元素printtuple[1:3]#输出第二个至第三个的
系统 2019-09-27 17:38:43 2070
什么是状态机?关于状态机的一个极度确切的描述是它是一个有向图形,由一组节点和一组相应的转移函数组成。状态机通过响应一系列事件而“运行”。每个事件都在属于“当前”节点的转移函数的控制范围内,其中函数的范围是节点的一个子集。函数返回“下一个”(也许是同一个)节点。这些节点中至少有一个必须是终态。当到达终态,状态机停止。但一个抽象的数学描述(就像我刚给出的)并不能真正说明在什么情况下使用状态机可以解决实际编程问题。另一种策略就是将状态机定义成一种强制性编程语言,
系统 2019-09-27 17:38:36 2070
Python是一种面向对象的语言,但它不像C++一样把标准类都封装到库中,而是进行了进一步的封装,语言本身就集成一些类和函数,比如print,list,dictetc.给编程带来很大的便捷Python使用#进行单行注释,使用'''或"""进行多行注释数值计算>>>print"Onehourhas",60*60,"seconds"Onehourhas3600seconds>>>result=12#同一行代码利用空格分段使格式更清晰>>>printresult
系统 2019-09-27 17:37:58 2070