Python学习记录

Python的创始人为
吉多·范罗苏姆
(Guido van Rossum)

    Python英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/),是一种面向对象直译式电脑程序语言。它包含了一组功能完备的标准库,能够轻松完成很多常见的任务。它的语法简单,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    与SchemeRubyPerlTcl动态语言一样,Python具备垃圾回收功能,能够自动管理内存使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python虚拟机本身几乎可以在所有的操作系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。

    Python的官方解释器是CPython,该解释器用C语言编写,是一个由社区驱动的自由软件,目前由Python软件基金会管理。

Python支持命令式程序设计面向对象程序设计函数式编程面向侧面的程序设计泛型编程多种编程范式。

SQLAlchemy or 查询

2022年06月10日

最近在使用 SQLAlchemy 的时候需要对多个字段进行查询,需要使用到 or 查询,在 SQLAlchemy or 查询示例如下:like_param = f'%{get_company_name}%' query_like_companies = IPCrawlerCompany.query.filter( or_(IPCrawlerCompany.name.like(like_...

Python 字符串插入指定字符串

2022年06月02日

最近在处理一堆字符串的时候,需要对字符串指定的位置插入字符串,下面是示例:原有字符串:405582插入字符串后的结果:40-55-82对于上面要求我们应该怎么实现呢?我们可以使用循环,但是有些麻烦,下面是示例代码:base_16_format = '405582'base_16_format_list = list(base_16_format)base_16_format_list.insert...

itsdangerous.exc.BadTimeSignature: Signature b'pn2lywt7kfsyjnfyhhfunf33bra' does not match

2022年05月30日

最近在使用 itsdangerous 生成用户验证密钥的时候出现了如下错误:itsdangerous.exc.BadTimeSignature: Signature b'pn2lywt7kfsyjnfyhhfunf33bra' does not match出现问题的原因:是由于基于时间的签名无效,则引发。也就是签名可能被篡改,会出现这个异常。解决方案:对出现的异常进行判断,示例代码如下:from ...

在 Python 中发送 html 页面邮件

2022年05月26日

最近在网站上增加了一个邮件订阅的功能,每次又新文章或者是其他重要消息,通过电子邮件通知用户。在使用邮件订阅的时候,用户在网站输入电子邮件之后,通过链接激活邮件,有新文章增加,通过已经激活的邮件通知订阅人,整个是这样的一个流程。但是在编写后端服务的时候,遇到一些问题,主要是通过电子邮件发送 html 页面问题,需要自定义页面的内容,通过电子邮件发送,所以需要用到模板。经过研究 Python 有 Ji...

如何修复:[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1076)

2022年05月26日

今天在使用 Python 发送邮件的时候出现了如下错误:[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1076)出现问题的原因:使用 SSL 发送邮件,端口是 465 而不是 587,下面是错误的代码:try: ssl_context = ssl.create_default_context() service...

TypeError: unsupported operand type(s) for +: 'int' and 'bytes'

2022年05月20日

最近在使用 Python 的 itsdangerous 发送激活邮件,需要使用到 token,生成 token 的代码如下:def generate_confirmation_token(self, expiration=3600): s = Serializer(current_app.config['SECRET_KEY'], expiration) return s.du...

Python 获取随机数

2022年05月19日

今天需要在 Python List 中,随机选择一定数量的数,第一个想到是 Python 的随机数。Python random 是一种伪随机数生成器。例如有下面的列表,我需要随机获取 10 个数,示例代码如下:number_list = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}, {'id': 5}, {'id': 6}, {'id': 7}, {'i...

Python contains

2022年05月19日

今天在编写 Python 代码的时候,需要判断一个字符串里面是否包含某个字符,我想到的就是 contains 这个方法,这个是 Javascript 里面的一个关键字,我不确定在 Python 中是否存在相同的关键字。经过查询 Python 中并不存在 contains 这个方法,所以只能用其他的方式,经过测试可以使用 in 下面是示例代码:get_value = '1 - 2' if ' ...