![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
文章平均质量分 62
stone0823
财务、SAP以及编程
展开
-
pycharm:无法加载文件activate.ps1,因为在此系统上禁止运行脚本
解决pycharm提示无法加载文件activate.ps1,因为此系统上禁止运行脚本的错误。原创 2022-11-06 14:02:14 · 1356 阅读 · 0 评论 -
PyPDF2 模块抽取PDF文件部分页面另存新文档
使用第三方模块 PyPDF2实现抽取pdf文件部分页面,并且保存为新的文档原创 2022-08-18 09:49:47 · 365 阅读 · 0 评论 -
PyPDF 模块实现多个 PDF 文件合并
使用第三方模块 PyPDF2。以下代码实现将当前文件夹下所有 pdf 文件合并为一个 pdf 文件。from PyPDF2 import PdfFileMergerimport osfrom matplotlib.cbook import file_requires_unicode files = os.listdir()#列出目录中的所有文件merger = PdfFileMerger() for f in files: #从所有文件中选出pdf文件合并 if f[-4:]原创 2022-03-22 09:29:58 · 516 阅读 · 0 评论 -
python字典用法
创建字典python 创建字典可以使用 dict 函数,或者使用花括号,用花括号的方式更为常见。d = { "a": "Athens", "b": "Belgrade", "c": "Cairo"}或者:d = dict(a="Athens", b="Belgrade", c="Cairo")遍历python 可以方便地遍历字典的 keys, values ,或者在遍历的时候获得 key 和 value。下面的代码演示了遍历的方式:for item in d.it原创 2021-12-20 15:07:20 · 794 阅读 · 0 评论 -
VS Code 运行Jupyter Notebook单元格不能识别Python语言问题解决
个人觉得在 VS code 中运行 Jupyter Notebook 比通过 Jupyter 服务器有着更好的体验。但今天在另外一台 PC 上运行的时候,发现单元格不能被识别为 Python,而显示为 CVE:语言也不能切换。经过网上查找,原因是 VS Code 另外一个扩展 Dependency Analytics 冲突,禁用 Dependency Analytics 再重新启动 VS Code 就可以了。参考visual studio code - VSCode doesn’t recogniz原创 2021-12-20 11:03:24 · 1449 阅读 · 0 评论 -
python - jpg图片转pdf
每周需要打印小孩子的作业,老师都是在 app 里用图片的格式布置,打印图片需要一页页打印,非常耗时,遂编写了如下一段脚本,节省一点时间。需要安装 fitz 和 PyMuPDF 两个模块:pip install fitzpip install PyMuPDF脚本如下:import fitz import osdoc = fitz.open()# jpg文件路径: 当前文件夹下的files文件夹img_path = os.path.join(os.path.abspath(os.cur原创 2021-12-12 11:39:42 · 2375 阅读 · 0 评论 -
手写一个自己的编程语言,就用Python实现
Youtube上优质视频,带你一步步手写一个能编译的编程语言,使用 Python 实现。不但能进阶 Python 的高级技巧,还会对编译原理有一个切身的感受,这可是理论学不到的。视频地址:Make YOUR OWN Programming Language in Python - YouTube项目源码:Interpreter for the BASIC language written in Python 3...原创 2021-10-11 09:51:01 · 716 阅读 · 0 评论 -
python使用虚拟环境要点
虚拟环境是指为当前的 python 工程创建一个隔离的python环境(an isolated Python environment)。因为 python 的插件众多,为避免版本冲突,Python 建议通过虚拟环境工具为项目创建纯净的依赖环境。在 python 3.3 之前,只能通过 virtualenv 创建虚拟环境,3.3 之后,可以用模块 venv 代替 virtualenv 工具,好处时不用单独安装。本文介绍 venv 模块的用法。创建虚拟环境创建一个文件夹,进入文件夹后,打开命名行窗口,运行原创 2021-08-30 11:31:08 · 3676 阅读 · 0 评论 -
Python的装饰器和Java的注解是一回事吗?
本文为本人阅读Python’s decorators vs Java’s annotations, same thing?的笔记。Flask 的路由看起来和 Spring 的机制非常类似。比如下面的代码定义了一个路由,当接收到 Http 请求 GET: /hello 的时候,调用 say_hello() 函数。app = Flask(__name__)@app.route('/hello', methods=['GET'])def say_hello(): return 'hello'原创 2021-06-06 19:35:23 · 1382 阅读 · 0 评论 -
Python 语言 - 函数的可变参数
在 Python 的代码中,经常可以看到函数的参数中有 *args 和 **kwargs 这样的参数。这是 Python 可变参数(也经常被称作不定长参数) 的语法。本文介绍可变参数的作用和用法。在定义函数的时候,经常碰到参数个数不确定的情况,比如,我们需要把若干个整数进行合计,如果没有可变参数的机制,需要传比如 List 数据类型作为参数。def add(int_list): rv = 0 for item in int_list: rv += item ret原创 2021-03-23 16:45:47 · 999 阅读 · 1 评论 -
利用 SQLAlchemy 实现轻量级数据库迁移
本文介绍结合 python 的几个工具,实现轻量级的数据库迁移。在日常工作中,可能需要将数据迁移到不同的数据库,可以考虑下面一些简单的办法:kettle 的多表复制向导,之前写过一篇博文:Kettle (6) - 跨数据库数据迁移几个细节使用 CSV 作为中介,需要花时间处理字段的数据类型利用 sqlalchemy,之前写过一篇博文:pandas DataFrame.to_sql() 用法。博文的操作过程还是比较繁琐,需要手工维护字段的数据类型假设我们现在需要把 ms sql server 中原创 2021-02-25 17:11:48 · 1132 阅读 · 0 评论 -
SQLAlchemy 执行原生 SQL语句
使用 sqlalchemy ,一般通过 Session 对象 ORM 方式操作数据库。如果需要通过 原生 SQL 语句操作数据库,就需要跟 Engine 和 Connect 对象打交道。Engine 对象包含数据库连接池和数据库方言,通过 create_engine() 函数来创建,engine 对象的 connect() 方法返回 Connection 对象,Connection 对象提供 execute() 方法,允许通过原生 sql 语句来操作数据库。本篇以 SQLite 数据库为例,简单介绍原生原创 2021-02-25 00:21:24 · 23903 阅读 · 4 评论 -
如何用python获取和保存B站历史播放记录
为什么要保存 B 站视频的播放记录呢? 因为 B 站的历史记录,最多保存 3 个月,超过 3 个月自动清除。所以我专门写一个脚本,将历史记录导出,保存在数据库中,一来是本地保存,二来也方便对这些视频按自己的习惯进行分类和做备注。B 站的历史记录,是以 Web API 的方式提交到前台的,浏览器中滚动条向下滑动的时候,动态提交 HTTP 请求。首先,我们需要学会如何查看 Web API。以 Chrome 浏览器为例。进入 B 站,点击右上角 「历史记录」按钮,然后按下 F12,调出开发者调试工具,切换到原创 2021-01-28 23:34:42 · 10182 阅读 · 2 评论 -
SQLAlchemy简明教程
SQLAlchemy 是 Python 著名的 ORM 工具包。通过 ORM,可以用面向对象的方式来操作数据库,不再需要编写 SQL 语句。本篇不解释为什么要使用 ORM,主要讲解 SQLAlchemy 的用法。SQLAlchemy 支持多种数据库,除 sqlite 外,其它数据库需要安装第三方驱动,不同数据库最主要区别在连接数据库 url 不同。本篇以 sqlite 数据库为例进行说明。建立到数据库的连接Engine 对象是使用 sqlalchemy 的起点,根据 sqlalchemy documen原创 2021-01-20 18:26:50 · 57786 阅读 · 5 评论 -
Python difflib库实现文本文件的差异比较
difflib 是 Python 的标准库,用于对序列 (sequence) 进行比较,以便于人类理解的方式标记差异,也可以将差异输出到 html 文件,以高亮的方式显示差异。本篇讲述如何使用 difflib 库来比较文本文件的差异原创 2021-01-07 20:10:18 · 4672 阅读 · 2 评论 -
Python如何操作MS Access数据库
Access 作为一款桌面型数据库,与 SQLite 类似,可以作为简单应用解决方案的数据存储。根据 [DB-Engines Ranking](https://db-engines.com/en/ranking) 的数据库排名数据,MS Access 在 2020年12月的排名为 11 位,不算太小众。本篇讲解在 Python 语言环境中,如何操作 Access 数据库。原创 2020-12-04 21:08:54 · 4649 阅读 · 0 评论 -
SQLAlchemy ORM查询常见筛选条件的表示方法
使用 SQLAlchemy ORM 查询数据的时候,如果需要的获取的记录按选条件进行筛选,可以参考本文介绍的相关方法。不存在什么技巧,需要的是熟悉而已。使用我经常用的数据源 Sample Data。推荐使用 jupyter notebook 进行交互测试。使用 SQLAlchemy ORM,涉及到 engine, session 等对象。在查询前,先准备好如下代码:from sqlalchem...原创 2020-03-07 20:08:01 · 7405 阅读 · 0 评论 -
tablib库实现数据导出为json/csv/excel等常见格式
Python 的 tablib 库在数据格式转换的时候非常方便,比如,我们有一个 json 文件,想转换为 csv 或者 Excel 文件格式。本篇介绍 tablib 库在格式转换中的应用。tablib 专门设计用于处理表格式数据( tabular dataset)的输入、处理和输出。python 的数据处理因为有 pandas 库,所以一般用不到这个库,但 tablib 库用于输出非常方便...原创 2020-02-26 12:52:07 · 1771 阅读 · 0 评论 -
Python数据分析基础:网页数据获取
本篇介绍使用 python 获取网页数据的方法,要爬取 51job Python 职位的招聘信息。原创 2020-02-18 14:44:21 · 2285 阅读 · 0 评论 -
理解和使用Python装饰器
装饰器在 Python 中无处不在,功能强大。本篇介绍装饰器的原理和用法,力求通俗易懂。我们从一个简单的例子开始,逐步展开。假设有一个函数,函数随便做点啥:def foo(): print("do something.")foo 和 bar 在英语中相当于汉语的张三、李四,意思就是随便给个名字。现在要给这个函数增加点功能,比如在函数调用前和调用后都打印一个输出提示。我们日常开发中经...原创 2020-02-04 17:56:10 · 975 阅读 · 0 评论 -
PyCharm如何使用Qt Designer
Qt Designer 是一个 GUI 设计器,能可视化设计出界面。PyQT5 通过 pyuic5 工具将 Qt Designer 生成的 xxx.ui 文件转换成 python 代码,大大节省手工编写界面代码的工作量。本篇介绍如何在 PyCharm 中集成 Qt Designer 工具,包括 QT Designer 的配置, pyuic5 的配置和调用界面代码的方法。pyqt5 可以使用 p...原创 2020-01-28 20:47:16 · 26481 阅读 · 4 评论 -
records库使用sqlite数据库Cannot operate on a closed database错误解决
Python的 records 库使用起来特别方便,对 RedShift, Postgres, MySQL, SQLite, Oracle, 和 MS-SQL 都提供支持。但最近在测试 records 操作 sqlite 数据库的时候,却出现一个莫名的错误。代码只有 4 行,是这样的:import records db = records.Database('sqlite:///testdb...原创 2020-01-17 10:14:43 · 8055 阅读 · 0 评论 -
Python解压常见格式的压缩文件
网络下载的视频文件通常都是压缩文件,以 rar 格式诸多。为了方便拷贝到 Android 等系统中,所以想一次性将某个文件夹的文件全部解压。以下代码能对 rar, zip, gz, tgz 和 tar 格式且没有密码的文件进行解压。unrar 是第三方库,可以通过 pip 安装。import gzipimport osimport tarfileimport zipfilefrom u...原创 2019-12-06 16:10:14 · 1636 阅读 · 0 评论 -
python 代码执行可视化
http://www.pythontutor.com/visualize.htm 网站提供了 Python、C、C++ 、Java、Ruby 等不同语言的执行可视化在线服务,对于理清或演示某些概念很有帮助。使用一个简单的示例来进行说明。python 的 list 是一个容器,对 list 的赋值操作使得两个变量都指向同一个对象。比如下面的代码:a = [1,2,3, ["Jan","Feb",...原创 2019-10-20 18:55:35 · 1988 阅读 · 0 评论 -
python records 库使用方法
records 库由大名鼎鼎的 Kenneth Reitz 开发,他也是 python requsts 库的作者。records 库的口号是 SQL for the human。开发人员基本只需要关注 SQL 语句。连接数据库records 库基于 sqlalchemy 实现,所以连接字符串相同。比如我想基于 pymysql 连接到 mysql 数据库,则用下面的语句建立与数据库的连接:im...原创 2019-10-14 22:49:20 · 12871 阅读 · 6 评论 -
Python 调用.NET类库
PythonNet 是一个 Python 包,允许在 Python 中与 .NET 运行时环境无缝集成,Python 版本 2.7/3.5-3.7 都可以使用。本文以 Python 调用 .NET System.Windows.Forms 为例,演示 PythonNet 的使用方法。安装PythonNet 支持 pip 方式安装:pip install pythonnet创建 WinFo...原创 2019-09-30 22:58:38 · 4210 阅读 · 0 评论 -
xlwings : 从此可以 VBA 调用 Python 代码啦
介绍 xlwsings,这个库允许你在 VBA 中调用 Python 代码,从而大大简化很多事务性工作的处理。并且使用简单方便...原创 2019-09-05 19:36:11 · 17333 阅读 · 6 评论 -
ChartDirector for Python 制作甘特图
项目中经常要汇报进度,少不了甘特图,没有感觉特别趁手的工具。网上搜一搜,大部分是讲 Excel 制作甘特图的。今天在网上搜索,发现 ChartDirector 组件有 Python 语言版的,而且支持多种编程语言。本文是试用记录。原创 2019-08-07 17:43:36 · 895 阅读 · 0 评论 -
Python - 批量更改文件名
使用Python脚本批量更改文件名原创 2016-02-16 10:30:23 · 918 阅读 · 0 评论 -
Windows环境下安装wdl文件
介绍Windows环境下安装wdl文件的方法原创 2015-08-14 18:00:23 · 1154 阅读 · 0 评论