最近由于需要用Python完成一项作业,于是在ubuntu16.04系统上倒腾了一下Python的开发环境,整个过程也是一波三折。现总结一下经验,以免再掉到坑里。1.ubuntu16.04自带的Python版本ubuntu16.04系统默认安装了Python2.7.12和Python3.5.2版本,路径分别为/usr/bin/python2.7和/usr/bin/python3.5。可以在终端输入python,然后连按两次TAB键,就会显示自己电脑上装了哪
系统 2019-09-27 17:46:07 1936
常用的简单的用法:fromxlrdimportopen_workbookbook=open_workbook(r'C:\Users\admin\Desktop\q.xlsx')sheet=book.sheets_names()[0]#第一个工作表名称sheet=data.sheet_by_name('Sheet1')#获得第一个工作表sheet=book.sheets()[0]#获得第一个工作表#获取总行数nrows=table.nrows#获取总列数nc
系统 2019-09-27 17:45:47 1936
测试代码如下:复制代码代码如下:classModelMetaClass(type):def__new__(cls,name,base,attrs):logging.info("clsis:"+str(cls))logging.info("nameis:"+str(name))logging.info("baseis:"+str(base))logging.info("attrsis:"+str(attrs))returntype.__new__(cls,n
系统 2019-09-27 17:45:40 1936
本节讲解了flask的请求,如果想在没有请求的情况下获取上下文,可以使用test_request_context()或者request_context(),从request对象的form中可以获取表单的数据,args中可以获取URL中的参数,files可以获取上传的文件,cookies可以操作cookie。首先你需要从flask模块中导入request:fromflaskimportrequest当前请求的方法可以用method属性来访问。你可以用form
系统 2019-09-27 17:38:46 1936
【详细步骤】:1.从Python下载windows版本的安装程序(点击进入),我这里由于操作系统是x64的因此选择Python2.7.11x64Installer~2.安装,这里建议不要安装到系统盘,以免重做系统后再次安装~3.IIS7.5->ISAPI和CGI限制->右键添加->ISAPI或CGI路径选择Python文件夹下的python.exe%s%s;描述中填写:python。4.IIS7.5->处理程序映射->添加脚本映射->请求路径:*.py->
系统 2019-09-27 17:38:16 1936
python的列表list可以用for循环进行遍历,实际开发中发现一个问题,就是遍历的时候删除会出错,例如l=[1,2,3,4]foriinl:ifi!=4:l.remove(i)printl这几句话本来意图是想清空列表l,只留元素4,但是实际跑起来并不是那个结果。再看下面,利用index来遍历删除列表ll=[1,2,3,4]foriinrange(len(l)):ifl[i]==4:dell[i]printl这样没问题,可以遍历删除,但是列表l如果变为l
系统 2019-09-27 17:38:00 1936
阿里云http://mirrors.aliyun.com/pypi/simple/中国科技大学https://pypi.mirrors.ustc.edu.cn/simple/豆瓣(douban)http://pypi.douban.com/simple/清华大学https://pypi.tuna.tsinghua.edu.cn/simple/中国科学技术大学http://pypi.mirrors.ustc.edu.cn/simple/上面源地址指令如下:p
系统 2019-09-27 17:37:39 1936
系统 2019-08-29 23:44:01 1936
——.NET设计模式系列之七Terrylee,2006年1月概述创建型模式,就是用来创建对象的模式,抽象了实例化的过程。它帮助一个系统独立于如何创建、组合和表示它的那些对象。本文对五种常用创建型模式进行了比较,通过一个游戏开发场景的例子来说该如何使用创建型模式。为什么需要创建型模式所有的创建型模式都有两个永恒的主旋律:第一,它们都将系统使用哪些具体类的信息封装起来;第二,它们隐藏了这些类的实例是如何被创建和组织的。外界对于这些对象只知道它们共同的接口,而不
系统 2019-08-29 23:41:40 1936
动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。有时我们希望给某个对象而不是整个类添加一些功能。例如,一个图形用户界面工具箱允许你对任意一个用户界面组件添加一些特性,例如边框,或是一些行为,例如窗口滚动。使用继承机制是添加功能的一种有效途径,从其它类继承过来的边框特性可以被多个子类的实例使用。但这种方法不够灵活。因为边框的选择是静态的,用户不能控制对组件加边框的方式和时机。一种极为灵活的方式是将组件嵌入另一个
系统 2019-08-29 23:40:19 1936