前言Quora问答社区的一个开发者投票统计,程序员最大的难题是:如何命名(例如:给变量,类,函数等等),光是如何命名一项的选票几乎是其它八项的投票结果的总和。如何给变量命名,如何让它变得有意义成了程序员不可逾越的难题,这篇文章参考了CleanCode,提供7条命名建议,希望能在取名字的过程中给你带来一些帮助。以下都是基于Python3.7语法1、使用有意义而且可读的变量名差ymdstr=datetime.date.today().strftime("%y-
系统 2019-09-27 17:49:04 2187
摘要在这篇文章里,我将以反模式的角度来直接讨论Django的低级ORM查询方法的使用。作为一种替代方式,我们需要在包含业务逻辑的模型层建立与特定领域相关的查询API,这些在Django中做起来不是非常容易,但通过深入地了解ORM的内容原理,我将告诉你一些简捷的方式来达到这个目的。概览当编写Django应用程序时,我们已经习惯通过添加方法到模型里以此达到封装业务逻辑并隐藏实现细节。这种方法看起来是非常的自然,而且实际上它也用在Django的内建应用中。>>>
系统 2019-09-27 17:49:03 2187
在任何语言中,都会规定某些对象(属性、方法、函数、类等)只能够在某个范围内访问,出了这个范围就不能访问了。这是“公”、“私”之分。此外,还会专门为某些特殊的东西指定一些特殊表示,比如类的名字就不能用class,def等,这就是保留字。除了保留字,python中还为类的名字做了某些特殊准备,就是“专有”的范畴。私有函数在某些时候,会看到有一种方法命名比较特别,是以“__”双划线开头的,将这类命名的函数/方法称之为“私有函数”。所谓私有函数,就是:私有函数不可
系统 2019-09-27 17:47:33 2187
下面程序能够爬取百度图片一个网页里面的所以图片,值得关注的是匹配字段,正则表达式要写正确,虽然匹配成功的但是爬取的图片还是较少,下篇我会采取get方法来请求更多图片来爬取。importurllib.requestimportreimporttimedefopen_url(url):req=urllib.request.Request(url)req.add_header('User-Agent','Mozilla/5.0(WindowsNT6.1;WOW6
系统 2019-09-27 17:47:28 2187
什么场景下会有main函数?当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。main函数的作用?__name__=='__main__'是Python的main函数入口。并非说,加入这句才能使用pythonxxx.py来执行,而是说,这里可以判断,当前是否是直接被python直接调用执行。main为什么只有文件当作执行程序的时候才会被执行呢?这是由于两方面原因,一方面,main函数是所有执行程序的入
系统 2019-09-27 17:47:18 2187
3.练习题3判断语句要求:判断语句的作用是什么?列举你所想到的开发中使用判断语句的场景。编写代码,1-7七个数字,分别代表周一到周日,如果输入的数字是6或7,输出“周末”。参考代码:#coding=utf-8day=int(input("请输入1-7中任意一个数:"))ifday==1:print("今天是周一")elifday==2:print("今天是周二")elifday==3:print("今天是周三")elifday==4:print("今天是周
系统 2019-09-27 17:46:07 2187
前言在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。可变参数(*)可变参数,顾名思义,它的参数是可变的,比如列表、字典等。如果我们需要函数处理可变数量参数的时候,就可以使用可变参数。我们在查看很多Python源码时,经常会看到某函数(*参数1,**参数2)这样的函数定义,这个*参数和**参数就是可变参数,一时会让
系统 2019-09-27 17:38:26 2187
python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象。。。。。。我们通过描述属性(特征)和行为来描述一个对象的。比如家里的小狗,它的颜色,大小,年龄,体重等是它的属性或特征。它会汪汪叫,会摇尾巴等是它的行为。我们在描述一个真实对象(物体)时包括两个方面:它可以做什么(行为)它是什么样的(属性或特征)。在python中,一个对象的特征也称为属性(attribute)。它所具有的行为也称为方
系统 2019-09-27 17:38:17 2187
哦,这就是真正牛X的程序员。不过,他也仅仅是牛X罢了,还不是大神。大神程序员是什么样儿呢?他是扫地僧,大隐隐于市。先搞清楚这些名词再说别的:循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。遍历(traversal),指的是按照一定的规则
系统 2019-09-27 17:38:16 2187
字典由多个键及与其对应的值构成的对组成(把键值对成为项),每个键和它的值之间用冒号(:)隔开,项之间用逗号(,)隔开,而整个字典由一对大括号括起来。空字典由两个大括号组成:{}dict函数可以用dict函数,通过其他映射或者(键,值)这样的序列对建立字典复制代码代码如下:>>>items=[('name','Gumby'),('age',42)]>>>d=dict(items)>>>d{'age':42,'name':'Gumby'}>>>d['name'
系统 2019-09-27 17:38:11 2187