![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 72
枇杷鹭
留下学习的痕迹。
展开
-
为什么在 Windows 下用 Ctrl+Z 退出 Python 而 Linux 下用 Ctrl+D 呢?
当我们想退出 python ,返回我们的 shell 时,你将如何退出?原创 2021-09-08 14:55:19 · 731 阅读 · 0 评论 -
Python 中非常狗的一个坑(在 `a={1:2},`后面多了一个逗号,自动被判为 tuple 类型了)
本意是好的,语法灵活一点,随意一点,用起来方便。可是不限制声明类型,甚至元组的声明都不用加括号,这就有点狗了。a = {'a': 2}# a 是 dicta['a']# a['a'] 是 2a = {'a': 2},# a 是 tuple ({'a': 2}, )a['a']# 报错a[0]['a'] # 才是 2...原创 2021-07-14 00:59:13 · 495 阅读 · 0 评论 -
给 Python 添加进度条 | 给小白的 tqdm 精炼实例!
tqdm包教包会!原创 2021-06-14 12:09:02 · 575 阅读 · 0 评论 -
@wraps 修饰器:让你的 Python 代码更加简短可爱 | 从简单实例来认识它
本文简单与读者朋友们「科普」一下修饰器,注意到我们这里实际上仅仅修饰了无参数的函数。其实,修饰器还有许多更加优雅用途,比如传入参数 *args, **kwargs ,修饰类 __call__ 等用法。期待以后我遇到好的应用场景,将经验分享给朋友们。原创 2021-06-13 22:19:30 · 529 阅读 · 5 评论 -
并发和并行 | Python中实现多线程 threading 和多进程 multiprocessing
深入浅出比喻说明线程与进程,附小白都能看懂的对比试验。原创 2021-06-10 21:35:52 · 6256 阅读 · 2 评论 -
Python格式化字符串字面值 | 被官方文档称之为『漂亮』的输出格式
用法可以参考Python 的字符串格式示例(format examples)。咱们这里自己造个场景:打印表格。原创 2021-06-08 13:54:02 · 644 阅读 · 1 评论 -
Python 添加类型标注 | 散发着自由松散气息的代码
Python 如此简洁,书写者在声明变量时甚至无需考虑类型。但是简洁与复杂间,是存在一个平衡点的。当我们书写较为复杂的项目时,还是希望可以拥有「静态类型语言」强大的类型检查和智能的提示。原创 2021-06-06 16:19:10 · 638 阅读 · 1 评论 -
dgl._ffi.base.DGLError: Cannot assign node feature “n_feat“ on device cuda:0 to a graph on device
记得从原理出发。原创 2021-01-31 17:48:11 · 3741 阅读 · 3 评论 -
【bug解决方案】powershell 中无法激活 conda 环境 /Anaconda 使用 powershell 无效
工作需求原因,拿到一台新电脑,首先需要安装 python 。一般地,我用 conda 管理自己的 python 环境。使用 conda 管理环境,大多需要用到命令行。使用 Anaconda 自带的 Anaconda Prompt 虽然没什么问题,但终究没有集成到自己的命令行工具中,对我而言,多开命令行很麻烦。一般,我会把所有命令行工具集成到 powershell 中,软件用 Windows Terminal 。这里遇到了 bug 。问题描述安装了 Anaconda 。输入 conda acti原创 2021-01-31 17:04:51 · 3430 阅读 · 4 评论 -
「懒惰的美德」我用 python 写了个自动生成给文档生成索引的脚本
想到一个需求:能不能在我每新增一条题目的笔记后,利用程序自动地将其归类、创建索引?用 Python 实现一个入门级的小脚本,涉及到文件读写、命令行参数、数组操作应用等知识点,在此分享给朋友们。原创 2020-12-05 10:40:47 · 718 阅读 · 3 评论 -
【入门必看】不理解「对象」?很可能有致命bug:简单的Python例子告诉你
这是 零基础编程 系列的第一篇文章,之后,我们将用简单的例子讨论:面向对象、指针、数据结构等等基础概念。我一直认为,新手对这些概念有些许了解后,将少走很多很多的弯路。原创 2020-11-24 00:44:25 · 593 阅读 · 4 评论 -
以后再也不用看“教程”!概括【配置环境】的原理,小白也能举一反三的python配置环境过程!
本文将用白话讲解 python 编译运行过程(计算机如何看懂我们写的代码的),引出配置环境的原理,让大家从此告别“教程”,以后可以随心配置任何的语言环境。原创 2020-07-17 14:40:38 · 583 阅读 · 0 评论 -
TypeError: keys must be str, int, float, bool or None, not tuple,解决 python 中 json 保存不了字典键值为 元组 的问题
解决 python 中 json 保存不了字典键值为 元组 的问题。原创 2020-06-13 18:34:14 · 9916 阅读 · 2 评论 -
二维平面坐标系中,判断某点是否在正六边形内 | python 实现 + 数学推导(已知正六边形六个顶点坐标)
已有文章给了我们一个高效的思路:在正六边形为原点且中心轴与y轴重合时,如何高效判断点是否在该正六边形内。本文的工作是将这种情况推广到正六边形处于任意位置。原创 2020-05-31 16:16:59 · 1720 阅读 · 0 评论 -
python 对 list[list] 矩阵进行逆时针旋转90度 matrix = list(map(list, zip(*matrix)))[::-1]
python 对 list[list] 矩阵进行逆时针旋转90度 matrix = list(map(list, zip(*matrix)))[::-1]。原创 2020-05-30 19:36:08 · 2629 阅读 · 2 评论 -
【广度优先搜索】一个实例+两张动图彻底理解 BFS | 思路+代码详解 | 用 DFS 自动控制我们的小游戏
在 第一篇文章 中,我们讨论了 如何用 pygame 写一个小游戏,并用键盘交互控制 。接下来,我们将分别用 DFS 、BFS 、DRL 实现自动控制。DFS 已经在 这篇文章 中讨论过,现在来看 BFS 。原创 2020-05-06 11:17:36 · 2018 阅读 · 0 评论 -
【深度优先搜索】一个实例+两张动图彻底理解 DFS | DFS 与 BFS 的区别 | 用 DFS 自动控制我们的小游戏
前言: 在第一篇文章中,我们讨论了 如何用 pygame 写一个小游戏,并用键盘交互控制 。接下来,我们将分别用 DFS 、BFS 、DRL 实现自动控制。这篇文章讨论了什么是深度优先搜索,如何匹配其到我们的小游戏上。原创 2020-05-06 00:16:50 · 3379 阅读 · 2 评论 -
【python实战】使用 pygame 写一个 flappy-bird 类小游戏 | 涉及思路+项目结构+代码详解 | 新手向
本项目总共花费了我两天时间(2020.5.2-2020.5.4),本项目包括:基于 pygame 的 amazing-brick 游戏复现,可以在电脑端手动玩此小游戏;基于 广度优先搜索算法(BFS, Breadth-First-Search) 的自动游戏机制;基于 宽度优先搜索算法(DFS, Depth-First-Search) 的自动游戏机制;基于 清华开源强化学习库 tianshou 的 DQN 算法,以强化学习的方式在游戏中实现自动控制。原创 2020-05-04 23:19:20 · 2343 阅读 · 0 评论 -
这个 GitHub Trending 让我在腾讯会议中“换脸成”任何人!来唠唠如何上手
GitHub 上又火了个项目,蛮有趣的:可以让你在 ZOOM 、腾讯会议等等软件中“换脸”成别人。自己 fork 到本地,调了一调。作者封装的已经相当好了,当然了,像我这种 CRUD 程序员 + AI 小白 肯定是要调一天的,不调一天是不可能的,也就调调就崩溃+一顿改环境这样子。咱们聊聊这个程序的原理与应用时的注意事项。原创 2020-04-26 22:46:11 · 5466 阅读 · 7 评论 -
什么样的 python 可以可谓专业 PyPI 项目?刚刚学到三个概念:pep8、Sphinx、pytest与GitHub Action的集成
最近在读很火的 tianshou (基于 pytorch 提供深度强化学习算法的简易接口),两个清华本科生做的。很规范、很优秀的项目。 做出来的项目,想要让别人使用、维护、建立良性可持续社区,项目结构清晰、写注释、生成文档是必不可少的。 我在 GitHub 上 watch 了该项目,现在项目文档工作正如火如荼,我的邮件提示也常常响起:“你看看,人家清华巨佬们今天又在努力工作学习,刚刚又提交了一个 commit ,而你写的幼儿园级别算法甚至都不收敛至最优解!”原创 2020-04-06 00:24:31 · 426 阅读 · 0 评论 -
【开发随笔】以强化学习环境 gym 库为例:为什么日常中我应该试图标准化接口?
这两天在看 openai 的 gym ,并尝试用其测试自己写的 Sarsa 。一塌糊涂,这里来记录下经验教训。官网对于 gym 的文档不多,也不详细,读了 gym 的源码,很直观,也确实用不着什么官方文档。强化学习与传统的“监督学习”、“非监督学习”不同,强化学习要时刻与环境/模型交互,以传输数据。这就不能简单地将数据输入,而要整理算法与数据的接口,将二者连接起来。原创 2020-04-04 23:32:31 · 527 阅读 · 0 评论 -
【python & VS Code】调用自定义模块 ModuleNotFoundError: No module named XXX
写 python 很久了,今天本没打算熬夜,但却被这么简单的问题困到了 零点半 … 有点像脑筋急转弯。在 VS Code 等轻量文本编辑器/项目管理器中,我不希望像 pycharm 一样由配置文件自动管理我们的调用模块路径。但这就有一个问题:需要我们写几行代码,将自定义模块的路径添加到系统路径中。这并不麻烦,我很喜欢微软的这个深度学习项目,我一直将其风格作为自己写 python 算法项目的...原创 2020-03-29 00:58:38 · 7318 阅读 · 1 评论 -
几行 python 代码合成 gif / 微信表情~与恶意合成软件说再见【文末附代码】
图片来源:《鬼灭之刃》 op 截屏gif 格式的图片不但自带“能动”属性,还可作为“表情”被收入微信表情包。随手制作 gif 表情包可以算得上是当代沙雕青年的必备技能之一了。制作 gif 比较流行的方法是:下载一个专门生成表情包的软件、访问一个在线转换的网站并按顺序上传图片或使用 Photoshop 里面的“时间轴”面板。但只是为了将几张图片“捏”在一起,产生一个能动的效果,上述方法其实都...原创 2020-02-27 22:47:17 · 1103 阅读 · 0 评论 -
第一次LeetCode周赛心得(力扣-cn周赛,使用python3)
之前一直在做数模与ML,第一次参加LeetCode比赛,学习了不少。原创 2020-02-02 21:35:35 · 3557 阅读 · 0 评论 -
【python报错】 ModuleNotFoundError: No module named 'X' 如何调用自己写的 moudle / python / .py 文件(同一项目中)
自己用 python 写项目,文件系统结构如下:RL-for-Order-WorkflowRL-for-Order-Workflow\pySimRL-for-Order-Workflow\pySim\testRL-for-Order-Workflow\pySim\test\test.pyRL-for-Order-Workflow\pySim\entityRL-for-Order-Wor...原创 2020-01-17 16:07:07 · 1055 阅读 · 1 评论 -
从程序设计、tqdm到lambda:python的“奇技淫巧”,让实现效率翻倍【科学计算类】
其实,python早已经把这种常用、重复性强的代码封装好了。了解这些“奇技淫巧”,很有助于我们提升开发效率,且增强代码可读性。原创 2020-01-12 00:15:04 · 586 阅读 · 0 评论 -
【写给以前的自己】python中,既生list何生tuple?简论学习数据结构(e.g.哈希化)对自己的提升
import queueq = queue.Queue()q.empty()Trueb=set()b.add([1,2])Traceback (most recent call last):File “”, line 1, in TypeError: unhashable type: ‘list’b.add((1,2))b.add((4,1))b[1][1]Tracebac...原创 2019-09-10 00:00:27 · 434 阅读 · 0 评论 -
vscode配置python 控制台/终端/TERMINAL 不输出/不显示 解决办法
有些朋友跟我一样,先按照anaconda,之后在anaconda的“邀请”下,顺便安装了vscode(visual studio code)。这样的话,用vscode打开python项目时,python的路径是配置好了的。但是这样产生了一个问题:在运行/调试后,没有报错,但是最基本的print()结果也不会输出在控制台终端TERMINAL上。原创 2019-08-12 22:45:06 · 56419 阅读 · 23 评论