python的dict用起来很方便,可以自定义key值,并通过下标访问,示例如下:复制代码代码如下:>>>d={'key1':'value1',...'key2':'value2',...'key3':'value3'}>>>printd['key2']value2>>>lambda表达式也是很实用的东东,示例如下:复制代码代码如下:>>>f=lambdax:x**2>>>printf(2)4>>>两者结合可以实现结构相似的函数调用,使用起来很方便,示例如
系统 2019-09-27 17:51:38 2089
记住以下几点:直接子类化内置类型(如dict,list或str)容易出错,因为内置类型的方法通常会忽略用户覆盖的方法,不要子类化内置类型,用户自定义的类应该继承collections模块。def__setitem__(self,key,value):super().__setitem__(key,[value]*2)#错误案例classAnswerDict(dict):def__getitem__(self,item):#错误案例return42impor
系统 2019-09-27 17:50:43 2089
推荐系统的相关知识我们已在前文中提到,在这篇文章中,我们会介绍如何用Python来搭建一个简单的推荐系统。本文使用的数据集是MovieLens数据集,该数据集由明尼苏达大学的Grouplens研究小组整理。它包含1,10和2亿个评级。Movielens还有一个网站,我们可以注册,撰写评论并获得电影推荐。接下来我们就开始实战演练。在这篇文章中,我们会使用Movielens构建一个基于item的简易的推荐系统。在开始前,第一件事就是导入pandas和numPy
系统 2019-09-27 17:49:46 2089
在web开发中经常用到验证码,为了防止机器人注册或者恶意登陆和查询等,作用不容小觑但是验证码其实不是一个函数就能搞定的,它需要生成图片和水印,其实每种语言都有相关的函数生成图片和文字水印。包括我熟悉的php,呵呵,今天主要来分享如何用python生成验证码。python生成验证码主要用到如下模块:Image,ImageDraw,ImageFont,ImageFilter和随机数生成模块Random。代码如下:#!/usr/bin/envpython#cod
系统 2019-09-27 17:48:19 2089
python的fnmatch还真是省心,相比于java中的FilenameFilter,真是好太多了,你完成不需要去实现什么接口。fnmatch配合os.walk()或者os.listdir(),你能做的事太多了,而且用起来相当easy。#coding:utf-8"""遍历C盘下的所有dll文件"""importosimportfnmatchdefmain():f=open('dll_list.txt','w')forroot,dirs,filesinos
系统 2019-09-27 17:48:05 2089
因为Python是自带文档,可以通过help函数来查询每一个系统函数的用法解释说明。一般来说,关键的使用方法和注意点在这个系统的文档中都说的很清楚。我试图在网上找过系统文档的中文版的函数功能解释,但是都没有找到,所以我决定将就使用英文版的系统自带的函数解释来学习。如果你想进行Tkinter和wxPython编程,想要知道一般的widget的使用方法和属性介绍,英文又不是太好的话,我推荐你,你可以去看看《Python与Tkinter编程》这本书,里面392页
系统 2019-09-27 17:47:58 2089
mktime()方法是localtime()反函数。它的参数是struct_time或全9元组,它返回一个浮点数,为了兼容时time()。如果输入值不能表示为有效的时间,那么OverflowError或ValueError错误将被引发。Syntax以下是mktime()方法的语法:time.mktime(t)参数t--这是struct_time或满9元组。返回值此方法返回一个浮点数,对于兼容性time()。例子下面的例子显示了mktime()方法的使用。#
系统 2019-09-27 17:46:39 2089
close()方法方法关闭打开的文件。关闭的文件无法读取或写入更多东西。文件已被关闭之后任何操作会引发ValueError。但是调用close()多次是可以的。Python自动关闭,当一个文件的引用对象被重新分配给另外一个文件。它使用close()方法来关闭一个文件一个很好的做法。语法以下是close()方法的语法:fileObject.close();参数NA返回值此方法不返回任何值例子下面的例子显示了close()方法的使用#!/usr/bin/pyt
系统 2019-09-27 17:46:32 2089
一、可变对象与非可变对象想要理解浅拷贝与深拷贝就必须得先明白可变对象与非可变对象。可变对象有:list,dict,set不可变对象有:int,float,bool,str,tuple。两者区别:对于可变对象,其值改变是在原地址上操作,不会创建新的内存地址。对于不可变对象其值改变是直接创建新的内存地址。二、赋值操作符‘=’表示对象的引用。python里面的赋值操作符‘=’实际上是对象的引用,其并没有进行复制操作。如果如果赋值操作符右边的操作数是字面值,比如字
系统 2019-09-27 17:46:11 2089
字符串中字符大小写的变换1.str.lower()//小写>>>'SkatE'.lower()'skate'2.str.upper()//大写>>>'SkatE'.upper()'SKATE'3.str.swapcase()//大小写互换>>>'SkatE'.swapcase()'sKATe'4.str.title()//首字母大写,其余的小写>>>'SkatE'.title()'Skate'字符串在输出时的对齐1.str.ljust(width,[fil
系统 2019-09-27 17:38:38 2089