python基础&进阶
文章平均质量分 85
总结分享工作中遇到的python 问题, 以及总结python相关库的使用
阿常呓语
分享快乐,留着感动。
展开
-
python 正则分割字符串
本文总结了一个常见的字符串的处理的问题,如何处理字符串分割, 使用内置的库 re模块 分割 会把 分隔符 弄掉. 基于内置库 无法满足这样的分割, 于是就写了这个文章来进行分割. 通过匹配固定的正则 来实现对字符串的分隔. 文中留了一个小问题, 把方法1到方法4 中 错误的地方, 改正过来, 感兴趣的同学可以评论留言,看到必回.分享快乐,留住感动. '2024-01-07 13:26:50' --frank。原创 2024-01-09 09:40:37 · 1032 阅读 · 0 评论 -
python中 什么是描述符?
python 描述符原创 2022-10-22 21:35:59 · 1759 阅读 · 1 评论 -
Python重试库 Tenacity 推荐
tenacity 重试库推荐原创 2022-08-13 19:15:16 · 287 阅读 · 0 评论 -
python3中 三个点是啥意思?
python3中函数注解 省略号,三个点是什么意思原创 2022-08-08 23:03:00 · 6039 阅读 · 3 评论 -
Python 解释器与字节码
Python 字节码,PVM 简单概要原创 2022-08-01 08:27:03 · 1011 阅读 · 0 评论 -
遍历的list 的时候 删除元素 注意事项
列表删除注意事项,那些年我写过的bug原创 2022-07-17 14:32:09 · 672 阅读 · 0 评论 -
python3.10 新的特性介绍
python3.10 新的特性介绍文章目录python3.10 新的特性介绍with 嵌套语句的使用 新增Match case 语句 新增匹配对象匹配状态码匹配枚举类型的变量或操作符新的含义其他参考文档Python3.10 发布也有一段时间了,新的版本提供了一些好用的功能,可能比较关注的就是 match case 这个多分支选择语法。 以及 with 语句 的改进等。with 嵌套语句的使用 新增with 语句 可以同时 进行 多个 with ,打开多个上下文管理器。import osimpor原创 2022-02-08 21:33:00 · 1002 阅读 · 0 评论 -
python中内置类型添加属性问题
python3中内置类型为啥不允许添加属性和方法原创 2022-02-05 10:40:00 · 1195 阅读 · 0 评论 -
python3中requests库重定向获取真实的URL
python3中requests库重定向获取真实的URL问题描述有时候 我们抓取一些页面,发现一些url 有重定向, 返回 301 ,或者302 这种情况。 那么我们如何获取真实的URL呢? 或者跳转后的URL呢?这里我使用 requests 作为演示假设我们要访问 某东的电子商务网站,我只记得网站好像是 http://jd.comimport requestsdef request_jd(): url = 'http://jd.com/' #allow_redirects=原创 2021-08-08 17:05:10 · 12415 阅读 · 0 评论 -
bs4中移除不需要的结点
bs4中移除不需要的结点文章目录bs4中移除不需要的结点问题描述解决方案参考文档问题描述相信有很多人使用bs4 来对页面进行处理 都有使用过。bs4 使用起来还是比较方便的,但是有的时候一些比较特殊的需求 就要查查文档,多动手试验。在 BeautifulSoup 中有的时候获取了一个结点 tag , 这个时候不想要里面的一些特殊的tag 比如 a 标签 。来看一个例子from bs4 import BeautifulSouphtml="""<html> <head>原创 2021-08-03 07:50:55 · 2479 阅读 · 0 评论 -
python3中json模块中dump dumps 乱码问题
python3中json模块中dump dumps 乱码问题json.dump json.dumps 中可以把一些内置的对象序列化为json 对象, 一个是dump 到文件,一个是转成字符串。现象描述但是如果字符串中有 中文字符,默认dumps 会把中文 转成 下面的字符import jsonsentence= "中文 frank 123"json.dumps(sentence)结果如下:'"\\u4e2d\\u6587 frank 123"'在python3 默认使用 UT原创 2021-07-26 21:43:44 · 727 阅读 · 0 评论 -
装饰器-带参数的装饰器动态传值
带参数的装饰器动态传值 有一个函数,返回字符串类型, 现在需要在这个 字符串上添加链接。或者添加一个 p 标签 , 这里很容易想到 可以做一个装饰器来完成这个任务。装饰器实现的简单实现相信很多的同学,都可以想到,这个还不简单 直接使用带参数的装饰器 不就可以搞定了。# -*- coding: utf-8 -*-from functools import wrapsfrom typing import Dict"""pip install pysimple-log==0.0.4"""原创 2021-03-07 18:03:29 · 2206 阅读 · 0 评论 -
flask自定义返回response
文章目录flask自定义返回response直接通过函数返回介绍一下 `jsonify`通过构建 返回对象总结参考文档flask自定义返回responseFlask 框架在python web 框架中 也是比较重要的一个,工作中也使用了很长时间,这个文章对自己使用flask 一些总结。自定义返回有两种方式第一种通过函数 返回 , 第二种通过 make_response 构建返回对象直接通过函数返回看下面的例子返回一个 三元组 即可 (body,status,headers)from fla原创 2021-02-06 18:52:41 · 6503 阅读 · 0 评论 -
requests库 response 字符编码的问题
requests库 response 字符编码的问题文章目录现象描述r.contenet 与 r.text 区别str 与 bytes 互转基础知识解决方案总结参考文档现象描述有时候从网上下载或者爬取网页的时候,有时候拿到网页是乱码 。模拟来启动一个server 服务端,编写app.py文件如下# -*- coding: utf-8 -*- from flask import Flaskfrom flask import make_responseapp = Flask(__name__原创 2021-01-26 22:31:59 · 1143 阅读 · 1 评论 -
python3中 for 循环中循环变量的作用域问题
文章目录python3中 for 循环中循环变量的作用域问题1-1 来看一个例子1-2 来看第二个例子1-3 循环变量 覆盖 外层变量的问题2 python 变量的作用域的问题2-1 来看一个 全局变量的例子2-2 如何修改一个全局变量呢2-3 在函数中定义自己的变量总结python3中 for 循环中循环变量的作用域问题前段时间 对实际项目重构代码,然后在我给变量重新命名的时候,for 循环中循环变量名 和外层 的变量名,取名相同,结果直接覆盖了外层变量的值, 由此 我就查了一下 文档有了这篇文章。原创 2020-10-24 10:00:43 · 16076 阅读 · 4 评论 -
python3.8 新的特性介绍
python3.8 新的特性介绍海象运算符 :=fstring 增强版def 函数 指...原创 2020-03-27 18:53:09 · 1749 阅读 · 0 评论 -
python中什么是 可调用的,什么是不可调用的?
python中什么是 可调用的,什么是不可调用的?概念介绍什么叫可调用,这个对象,可以 通过某种方法 执行,或者说 这个对象对象.(*args,**kw) 如何这个方法 可以执行 那么我们就说 这个对象是可调用的。在python中最常见的 比如函数 ,方法 ,这些都是可以调用的 因为这些都可以通过上述方法执行 。函数是可调用的吗比如我定义一个函数,他可以通过 函数名() 这种方式 ...原创 2020-03-24 13:49:54 · 3423 阅读 · 5 评论 -
使用python3 来完成批量替换文件名
使用 python 来完成批量文件名的替换需求有时候 有些图片需要我批量重命名,如果比较少的时候还好, 直接 rename 就行, 如果文件特别多批量命名 就比较重要了,比如 有一个文件夹有一组图片 是有序号的,但是名字没有意思,我想改变一下的他们的名字,变成一个有意义的名字比如 下面一组图片 ,我希望把 ‘幻灯片’ 换成 ‘bs-01-’期望替换成 这样:脚本说明核心 就是通过...原创 2020-02-15 17:08:07 · 1149 阅读 · 2 评论 -
python3 中的上下文管理器
文章目录python3 中的上下文管理器上下文管理的作用 和 目的介绍 上下文管理器 协议enter 方法介绍exit 方法介绍上下文管理 用法框架里面使用总结python3 中的上下文管理器上下文管理器 是什么只要 实现了 __exit__ , __enter__ 的类 它就是上下文管理器. 它可以用来管理上下文实现了 __exit__ , __enter__ ...原创 2019-12-01 23:13:59 · 512 阅读 · 0 评论 -
python如何分享自己的包 到官方pypi 上面
发布python 到 到官方 pypi 上面文章目录1 首先 要写一个 setup.py2 配置pypirc 文件3 尝试 本地打包 发布4 可能遇到的障碍5 参考文档举个例子 现在 要发布 useful_decroation 这个包发布一般需要 setup.py , LICENSE.txt package ,README.rst 等1 首先 要写...原创 2019-10-31 22:06:54 · 441 阅读 · 1 评论 -
python的常用日期处理datetime模块
一 Python 中 日期类型 与字符串互转的问题1 字符串 转成 datetime 类型# 函数 datetime.datetime.strptime()def strptime(cls, date_string, format):pass 这个函数 需要传入两个参数 date_string 即日期字符串, format 即日期的格式看下面代码, 很方便就...原创 2018-03-03 17:35:16 · 6347 阅读 · 2 评论 -
使用pymongo来操作mongodb数据库
本文介绍 mongodb 的基本使用,常用操作.主要讲 pymongo 的使用, 同时必要的时候会说一些 源码的 以及注意事项.涉及主要说了一些常见的问题, monggodb 中经常用过的查询操作. and or 用法 排序操作 工具类 in 查询 skip ,offset 操作 cursor 介绍 - 遇到错误 相关错误1 根据mongo_id 查询文档...原创 2019-04-03 21:18:39 · 2811 阅读 · 0 评论 -
pandas 中处理日期相减问题
pandas 中处理日期相减问题.假设 有这样 一个需求, 我获取了一组日期是某个人的通话日期,我想计算出 这段时间里面, 没有通话的天数, 以及 连续3天以上没有通话的次数#!/usr/bin/env python3# -*- coding: utf-8 -*-"""@Time : 2019/5/1 08:02@File : test_diff.py@Author ...原创 2019-05-01 09:38:35 · 13376 阅读 · 0 评论 -
python中单例模式是什么
单例模式是什么意思?问题有的时候 我们可能希望某一个对象只会在程序中出现一次,之后所有的调用使用同一个对象, 我们如何实现呢?比如说 数据库的连接池,我需要初始化一次就可以了. 用一个对象就可以了.如何实现无论执行多次的函数,或者类的构造方法,只会生成一个对象呢?以下几种方式第一种方式如果是通过函数返回了一个对象,可以通过这种方式 来实现 无论函数执行多少次,都只会有一个对象生成....原创 2019-06-01 17:51:10 · 1887 阅读 · 0 评论 -
celery 简要概述
文章目录1 celery 简要概述1.1 celery 可以做什么?2 celery 的核心模块2-1 celery 的5个角色3 celery 和flask 如何结合起来3.1项目结构3.2 项目入口 文件 routes.py3.3 task 如何定义3.3.1 绑定任务3.4 worker 启动入口3.5 消费者如何工作3.6 如何通过task_id 去获取任务状态呢4 源码解析4.1 c...原创 2019-07-29 22:38:54 · 51017 阅读 · 5 评论 -
python3中 operator模块用法介绍
文章目录概述将运算符映射到函数1基本方法 介绍2 三个类介绍2-1 attrgetter 介绍2-2 itemgetter 使用介绍1 用来排序2 通过 获取多个值2-3 methodcaller 介绍3 性能测试4 总结5 参考文档官方 operator 模块operator 模块提供了一套与Python的内置运算符对应的高效率函数 . 许多函数名与特殊方法名相同,只是没有双...原创 2019-08-03 08:52:27 · 23048 阅读 · 0 评论 -
python3 调用父类构造方法, 以及调用普通方法的思考
python 调用 父类构造方法, 以及调用普通方法的思考文章目录一段代码引发的思考super 关键字super 两种写法的区别是什么?回到最初的问题参考文档最近看一些 代码,产生 一些困惑 , 关于python中的调用父类的方法以及 构造方法,有的方法 直接用类去调用.我不是很理解 这种写法,一段代码引发的思考下面是我看 WSGIServer 代码的时候,有一点疑惑 .server_...原创 2019-09-03 14:42:28 · 1525 阅读 · 0 评论 -
WSGI 是什么
文章目录1 WSGI 是什么?1-1容易混淆的几个概念2 协议内容2-1 application 端2-2 server 端 或者 gateway端2-3 start_response 为啥要返回一个 write() 一个可调用的对象?3 从 web framework Flask 中学习WSGI4 从 gunicorn中学习WSGI5 一个简单的demon6 总结7 参考文档1 WSG...原创 2019-09-04 18:04:48 · 3375 阅读 · 0 评论 -
使用 virtualenv 创建虚拟环境
文章目录首先弄明白为啥要有虚拟环境?使用 virtualenv 创建虚拟环境1 创建虚拟环境1-1. 补充 创建 虚拟 环境有一些选项1-2 激活虚拟环境1-3 退出虚拟环境使用 python -m 来生成 虚拟环境2 使用方法2-1 创建 python3.6 的虚拟环境2-2 创建 python3.7 的虚拟环境总结参考文档首先弄明白为啥要有虚拟环境? 当手上项目越来越多,项目依...原创 2019-09-27 22:54:43 · 5802 阅读 · 5 评论 -
python3 如何 获取一个文件的目录,获取 上一级目录
python3 如何 获取一个文件的目录,获取 上一级目录1 _file_ 是什么 ?if __name__ == '__main__': file = __file__ print(f"file = {__file__!r}") 结果如下file = ‘C:/Users/changfx/PycharmProjects/FirstDemo/demo/secon...原创 2019-09-30 17:30:48 · 2101 阅读 · 0 评论 -
python3中的特性property介绍
python3中的特性property介绍文章目录python3中的特性property介绍特性的引入特性和属性的区别是什么?设置只读特性设置 读写 特性对特性的合法性进行校验property 是什么?特性的两种写法第一种写法第二种写法常见的一些例子对一些值 进行合法性校验.基础版代码优化版代码缓存一些值总结参考文档特性的引入特性和属性的区别是什么?特性与属性的区别是什么 ?在pyth...原创 2019-10-06 15:59:32 · 688 阅读 · 0 评论 -
python多线程学习笔记
线程 常用方法介绍为啥 要使用多线程使用多线程应该注意的问题.thread中join 的用法线程安全线程间如何通信 , 锁机制比较复杂的内容 .Queue,线程 同步问题 Event, Condition 等…死锁问题线程池的使用, 为啥要有线程池呢?结合实战,看看项目中如何使用多线程?1 思考python 多线程编程 为什么会有多线程呢?多线程的优势是什么呢?首先举...原创 2019-03-15 21:59:04 · 1272 阅读 · 2 评论 -
python基础类型set 用法
python 数据结构 set 用法集合(set)是一个无序的不重复元素序列。A set object is an unordered collection of distinct hashable objects.set 是一个无序的,不重复的可hash 对象.用来 存储 不重复元素的一个容器,并且元素直接是无序的.可以使用大括号 { } 或者 set() 函数创建集合.注意:创建...原创 2019-02-02 17:43:15 · 346 阅读 · 0 评论 -
python3对多线程join的理解
python3 对多线程join 的理解多线程编程个人比较难理解,虽然 工作中用一直用多线程编程, 难免有时候也会遇到问题, 这里就简单谈一谈 线程里面join 如何使用的?当然参考了别人的博客,如果有什么问题,请留言反馈, 一起交流.这里所说的是 threading.Thread 这种方式 创建的多线程.例如下面的代码,有两个线程, 一个速度快, 一个速度慢#!/usr/bin/e...原创 2019-01-16 18:19:20 · 6517 阅读 · 4 评论 -
python 中 __call__简单介绍
python 中 __call__ 简单介绍Python中有一个有趣的语法,只要定义类型的时候,实现__call__函数,这个类型就成为可调用的。 换句话说,我们可以把这个类型的对象当作函数来使用,相当于 重载了括号运算符。我们可以 实例对象()1 来看下例子class TestCall(object): def __init__(self, name): self.na...原创 2018-06-05 22:53:02 · 18093 阅读 · 4 评论 -
python中的any ,all方法
python any() all() 方法 ,可以用来判断 值是否为空.all(iterable)all() 函数用于判断给定的可迭代参数 iterable中的所有元素是否不为 0、''、False 或者 iterable 为空,如果是返回 True,否则返回 False。1. 来看一个例子# 简单来说 如果每个元素都是有值的,返回True names = ('name', 'lao...原创 2018-05-26 10:24:33 · 4730 阅读 · 2 评论 -
python去除字符串中的空格
1 去除Python 字符串中的空格 去除空格 的话有非常简单的方法 来完成. strip() 但是这个函数 也是只能去除字符串两天的空格,中间的空格 是没有办法的. 方法1text = " Python’s standard library is very extensive, offering a wide range of facilities as ind...原创 2018-05-19 17:07:43 · 2461 阅读 · 0 评论 -
闭包与装饰器简单概括
装饰器在Python2.4 就开始使用了,装饰器可以说是一个比较厉害的功能.但是 我也是刚开始学装饰器的时候,比较不好理解装饰器的思想. 我希望我的这篇文章,能给刚开始学习装饰器的人,带来更简单的理解.当然也非常感谢,有那么多人写过相关的内容,我也是不断看别人的博客,学习.现在我也想分享一下装饰器,希望可以给刚开始学装饰器的你,提供一些帮助....原创 2018-05-13 19:10:12 · 906 阅读 · 0 评论 -
collection 中 Counter的使用
collection.Counter 的使用 “”” https://docs.python.org/3.6/library/collections.html#collections.Counter Counter 是 dict 子类 A counter tool is provided to support convenient and rapid tallies. ...原创 2018-04-22 10:42:39 · 8375 阅读 · 0 评论 -
python模块的使用 json模块
json 数据格式,是目前传输数据常用的格式了, Python 提供了一个json 模块, 就非常好用, 提供函数 也比较好用,这里简单分享一下. 这个模块的功能主要 就是 将json字符串 互转 json 对象, 也就是Python 中的字典. 也就是 序列化,与反序列化 . 直接看代码:1 一个Python数据结构转换为JSON 字符串#!/usr/bin/env python# -*...原创 2018-03-31 23:22:19 · 2474 阅读 · 0 评论