
Python
郑廿三
这个作者很懒,什么都没留下…
展开
-
Django 运行报错 Specifying a namespace in include()without providing an app_name
python3 Django 环境下,如果你遇到在根目录下urls.py中的include方法的第二个参数namespace添加之后就出错的问题。请在**[app_name]目录下的urls.py**中的urlpatterns前面加上app_name=’[app_name]’, [app_name]代表你的应用的名称。 例如:app_name =’[blog]’ ...原创 2018-11-20 19:44:17 · 365 阅读 · 0 评论 -
python函数参数前面单星号(*)和双星号(**)的区别
在python的函数中经常能看到输入的参数前面有一个或者两个星号:例如 def foo(param1, *param2): def bar(param1, **param2): 这两种用法其实都是用来将任意个数的参数导入到python函数中。 单星号(*):*agrs 将所以参数以元组(tuple)的形式导入: 例如: def foo(param1, *param2): print pa...原创 2019-03-05 09:18:09 · 1134 阅读 · 0 评论 -
关于Python的装饰器
Python中的装饰器是你进入Python大门的一道坎,不管你跨不跨过去它都在那里。 为什么需要装饰器 我们假设你的程序实现了say_hello()和say_goodbye()两个函数。 def say_hello(): print "hello!" def say_goodbye(): print "hello!" # bug here if __name__ ==...原创 2019-03-05 09:46:01 · 117 阅读 · 0 评论 -
解析Python中的yield关键字
前言 python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield。有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用。 一段代码 def fun(): for i in range(20): x=yield i print('good',x) if __name__ == '__main__': a=fun() a.__next__() x=a....转载 2019-03-04 17:28:25 · 286 阅读 · 0 评论 -
with语句与上下文管理器
with语句 上下文管理器 contextlib模块 参考引用 with语句 with语句时在Python2.6中出现的新语句。在Python2.6以前,要正确的处理涉及到异常的资源管理时,需要使用try/finally代码结构。如要实现文件在操作出现异常时也能正确关闭,则需要像如下实现: f = open("test.txt") try: for line in f.readline...转载 2019-03-04 19:57:12 · 310 阅读 · 0 评论