Python学习记录

Python的创始人为
吉多·范罗苏姆
(Guido van Rossum)
Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/),是一种面向对象、直译式的电脑程序语言。它包含了一组功能完备的标准库,能够轻松完成很多常见的任务。它的语法简单,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。
与Scheme、Ruby、Perl、Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理内存使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python虚拟机本身几乎可以在所有的操作系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。
Python的官方解释器是CPython,该解释器用C语言编写,是一个由社区驱动的自由软件,目前由Python软件基金会管理。
Python支持命令式程序设计、面向对象程序设计、函数式编程、面向侧面的程序设计、泛型编程多种编程范式。
'NoneType' object has no attribute 'xxxx'
2018年12月18日
最近在使用SQLAlchemy查询数据的时候报如下错误:'NoneType' object has no attribute 'xxxx'看一下代码的写法:get_sms_count = SMSCount.query.filter_by(PhoneNumber_id=number).first() if get_sms_count.SMS_Count is None: msg_coun...
SQLAlchemy insert 和 update
2018年12月17日
在SQLAlchemy,update和insert的写法很像,但是又有区别,下面看看代码:insert操作代码:msg_count = db.session.query(sqlalchemy.func.count(SMS_Receive.id))\ .filter(and_(SMS_Receive.IsShow == True, SMS_Receive.PhoneNumb...
python 自增运算
2018年12月17日
最近需要使用到Python的自增运算符,在c#中直接是++,但是在python里面没有这个运算符,参考了python运算符之后,在python中,自增运算符写法如下:a+=1等同于:a=a+1在python中,自增使用的是+=。参考资料:Python 运算符黄兵个人博客原创。转载请注明出处:黄兵个人博客 - python 自增运算
Function call can be replaced with set literal
2018年12月06日
最近在Python中,使用如下代码:ALLOWED_EXTENSIONS = set(['png', 'jpg', 'jpeg', 'gif'])但是PyCharm如下提示:Function call can be replaced with set literal可以直接使用字典,修改成如下代码:ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg', 'gif'}...
flask和redis组合的一些案例文章
2018年12月03日
最近网站数据达到20w左右,每天数据在以7000的量增加,在统计的时候网站性能不是很理想,需要用到缓存。通过flask连接到redis的代码如下:# -*- coding: utf-8 -*- import redis import time start = time.clock() redisClient = redis.StrictRedis(host='localhost',...
Pyhotn导入模块中的所有类
2018年11月22日
要导入模块中的每个类,可以使用下面的语法:form module_name improt *不推荐使用这种导入方式,其原因有二。首先,如果你只看一下文档开头的import语句,就能清楚地知道了程序使用了哪些类,将大有裨益、但这种导入方式没有明确的指出你使用了模块中的哪些类。这种导入方式还可能引发命名方面的困惑。如果你不小心导入了一个与程序文件中其他东西同名的类,将引发难以诊断的错误。这里之所以介绍...
Python 类编码风格
2018年11月22日
在编写复杂的程序的时候,你必须熟悉与类有关的编码风格问题。类应该采用驼峰命名法,即将类中的每个单词的首字母都大写,而不是用下划线。实例名和模块名都采用小写格式,并在单词之间加上下划线。对于每个类,都应紧跟在类定义后面包含一个文档字符串。这种文档字符串简要的描述类的功能,并遵循编写函数的文档字符串时采用的格式约定。每个模块都应该包含一个文档字符串,对其中的类可用于做什么进行描述。可用空行来组织代码,...
Jinja2 如何判断是否为空
2018年11月17日
最近需要在Jinja2判断list是否为空,才开始这样写:{% if pro_brand is not None %} {% endif %}之后报错,参考了一下Stack Overflow,这个问题终于解决问题了:{% if pro_brand is not none %} {% endif %} 最后代码截图:2019年6月30日更新:有留言说上面还是报错,之后修改为如下内容:{% if ...