一、写在前面说道程序员,你会想到什么呢?有人认为程序员象征着高薪,有人认为程序员都是死肥宅,还有人想到的则是996和ICU。别人眼中的程序员:飞快的敲击键盘、酷炫的切换屏幕、各种看不懂的字符代码。然而现实中的程序员呢?对于很多程序员来说,没有百度和Google解决不了的问题,也没有ctrl+c和ctrl+v实现不了的功能。那么身为一个程序员,要怎么让自己看起来更加“专业”呢?答案就是加快自己的打字速度了,敲的代码可能是错的,但这个13却是必须装的!然而还是
系统 2019-09-27 17:56:59 2168
指路牌《FlaskWeb开发》《FlaskWeb开发基于Python的Web应用开发实战》《FlaskWeb开发》是否适合新手入门PythonWeb开发?正文《FlaskWeb开发基于Python的Web应用开发实战》,O'Reilly"动物书系列"的"狗书",应该是很多Flask初学者被推荐使用的入门书,但是这本书真的适合初学者吗?Python的Web框架非常多,例如Django、Flask、Tornado、Web.py,Tornado没有接触过,无法评
系统 2019-09-27 17:56:19 2168
一、动机最近打算折腾vn.py,但只有py27版本的,因为一向习惯使用最新稳定版的,所以不得不装py27的环境,不得不说Python的全局锁真的很烦。身为懒癌患者,必然使用全功能的anaconda,但不想同时装py27和py35两个版本的anaconda巨无霸(同时装两个,不知道conda是否也可以管理环境),于是选择用conda装python27的环境及一些必要的包。弄了几天终于把办公电脑和家里的Mac机上的环境都配好了,即使有了官方的安装教材,也踩了不
系统 2019-09-27 17:55:36 2168
types.MethodType(第一个参数是要绑定的方法,第二个参数是要绑定的对象,第三个参数是类名(可省略))例如:importtypesclassperson():pass##为对象动态增加成员函数defjoin_age(self,age):self.a=agep=person()p.join_age=types.MethodType(join_age,p,person)
系统 2019-09-27 17:55:17 2168
Python语言有一个比较Pythonic的功能,也是一个具有很强大功能的特性,那就是装饰器。1.Python装饰器的原理Python中的装饰器是通过利用了函数特性的闭包实现的,所以我们需要了解Python闭包的原理,以及函数的功能特性。1.1函数特性函数作为变量传递defadd(x):returnx+1a=add(5)print(a)#运行结果:6函数作为参数传递defadd(x):returnx+1defexecute(f):returnf(3)pri
系统 2019-09-27 17:54:59 2168
Python函数编程——迭代器我们已经知道,可以直接作用于for循环的数据类型有以下几种:1、类是集合数据类型,如list、tuple、dict、set、str等;2、一类是generator,包括生成器和带yield的generatorfunction。这些可以直接作用于for循环的对象统称为可迭代对象:Iterable,可迭代的意思就是可遍历、可循环。可以使用isinstance()判断一个对象是否是Iterable对象:>>>fromcollecti
系统 2019-09-27 17:54:50 2168
datetime模块中包含五种基本类型:date、time、datetime、timedelta和tzinfo,tz是timezone的缩写,tzinfo用于表示时区信息。一,date类型date类型表示日期,是由year、month和day构成的对象1,初始化date对象使用date(year,month,day)函数来初始化date对象:fromdatetimeimportdatemydate=date(year,month,day)2,date对象函
系统 2019-09-27 17:54:44 2168
类属性和实例属性首先来看看类属性和类实例的属性在python中如何存储,通过__dir__方法来查看对象的属性>>>classTest(object):pass>>>test=Test()#查看类属性>>>dir(Test)['__class__','__delattr__','__dict__','__doc__','__format__','__getattribute__','__hash__','__init__','__module__','__
系统 2019-09-27 17:54:39 2168
pip源配置文件可以放置的位置:Linux/Unix:/etc/pip.con~/.pip/pip.conf(每一个我都找了都没有,所以我是在这个文件夹中创建的pip.conf文件)~/.config/pip/pip.confMacOSX:~/Library/ApplicationSupport/pip/pip.conf~/.pip/pip.conf/Library/ApplicationSupport/pip/pip.confWindows:%APPDA
系统 2019-09-27 17:53:45 2168
Python面向对象编程——元类一、只是储备exec:三个参数参数一:字符串形式的命令参数二:全局作用域(字典形式),如果不指定,默认为globals()参数三:局部作用域(字典形式),如果不指定,默认为locals()exec的使用#可以把exec命令的执行当成是一个函数的执行,会将执行期间产生的名字存放于局部名称空间中g={'x':1,'y':2}l={}exec('''globalx,zx=100z=200m=300''',g,l)print(g)#
系统 2019-09-27 17:53:16 2168
在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异主要体现在以下几个方面:1.python3中print是一个内置函数,有多个参数,而python2中print是一个语法结构;2.Python2打印时可以不加括号:print'helloworld',Python3则需要加括号print("helloworld")3.Python2中,input要求输入的字符串必须要加引号,为了避免读取非字符串类型发生的
系统 2019-09-27 17:52:30 2168
问题:用两个栈来实现一个队列,完成队列的Push和Pop操作。分析:栈的特性是“先进后出”,队列为“先进先出”。思路:入队:直接把新元素压入stack1即可。出队:根据队列先进先出的性质,由于先进入队列的元素被压倒stack1的栈底,要想实现先入队列的先出队,需要将stack1中的元素逐个弹出并压入stack2,经过弹出和压入之后最先进入的元素就处于stack2的栈顶,有可以直接弹出。python实现代码:classSolution:def__init__
系统 2019-09-27 17:52:27 2168
初试牛刀假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些基本概念。很显然,如果你希望真正学好一门语言,你还是需要亲自动手实践的。在此,我会假定你已经有了一定的编程基础,因此我会跳过大部分非Python语言的相关内容。本文将高亮显示重要的关键字,以便你可以很容易看到它们。另外需要注意的
系统 2019-09-27 17:52:00 2168
最近公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的。废话不多说,开始今天的题目:问:谈谈Python的特点和优点是什么?答:Python是一门动态解释性的强类型定义语言:编写时无需定义变量类型;运行时变
系统 2019-09-27 17:51:32 2168
-re.I#忽略大小写-re.M#多行匹配,将正则作用到源数据的每一行-re.S#单行匹配,将正则作用到整个源数据,输出一个整体字符串(包括换行符也打印)string='''fallinlovewithyouiloveyouverymuchilovesheiloveher'''#去除以i开头的每一行数据re.findall('^i.*',string,re.M)['iloveyouverymuch','iloveshe','iloveher']#匹配全部行
系统 2019-09-27 17:51:20 2168