首页/文章/ 详情

关于Python的开发环境,我打算换个玩法

4月前浏览818

 

集包管理和项目管理于一身的Python工具——uv

使用uv作为Python的包管理工具,快到你怀疑人生。很多情况下我以为卡住了,结果已经装完了。但我不满足于此。众所周知,在vscode中写Python代码,Python,Pylance这几个插件绑在一起,好大一坨,且默认全部安装。这一点让人不爽。

最近,一款同样用Rust语言开发的Python类型检查器和语言服务器--Pyrefly 发布1.0版本,我又动心了,准备把玩一下。

实操下来,对Pyrefly很满意。下面简要说说具体流程。

安装Pyrefly

https://github.com/facebook/pyrefly/releases/tag/1.0.0
下载可执行文件,添加path环境变量即可。
另外在vscode中也要安装Pyrefly插件。

这样在uv构建任意一个虚拟环境都可使用Pyrefly

初始化项目配置

默认情况下,Pyrefly 在 VS Code 中只有当你打开被配置覆盖的文件时才会显示类型错误波浪线。为了获得完整的检查体验,需在项目根目录初始化配置:

  • • 终端输入命令:pyrefly init,(若虚拟环境没有激活,则需uv run pyrefly init命令),它会自动扫描项目并生成 pyrefly.toml,或写入 pyproject.toml 的 [tool.pyrefly] 节点  。
  • • 如果暂时不想建配置文件,也可在 VS Code 设置中将 python.pyrefly.displayTypeErrors 改为 force-on,强制全局开启错误提示。

VS Code 设置

打开 VS Code 的 settings.json,可根据习惯调整以下推荐设置:

  • • 开启类型错误强制显示(若未创建配置文件):
    "python.pyrefly.displayTypeErrors": "force-on"
  • • 开启悬停跳转链接(在悬浮文档中包含“跳转到定义”链接):
    "python.a nalysis.showHoverGoToLinks": true
  • • 确保内联提示(Inlay Hints)开启:Pyrefly 会用内联提示显示推断的参数名和变量类型,请确保 "editor.inlayHints.enabled" 为 on。
  • • 工作区诊断范围:默认 openFilesOnly 只检查当前打开的文件。对中型项目,可设为 "python.pyrefly.diagnosticMode": "workspace",在项目打开时全量检查所有文件。

常用功能

配置完成后,打开任意 Python 文件,你将获得:

  • • 实时诊断:传参类型错误、访问不存在属性等会立刻标红。
  • • 智能感知:悬浮查看精确类型与文档、Ctrl+点击跳转到定义、查找所有引用、自动补全等。
  • • 内联类型:变量和返回值会自动显示推断出的类型,可双击插入为正式注解。

牛刀小试

  def add(a: int, b: int) -> int:
    return
 a + b

add("1", 2)

终端输入命令

  uv run pyrefly check

输出以下

当然,Pyrefly 更适合大项目。

划重点,由于没有安装Python三件套插件,因此就没法点VS Code右上角的三角按钮运行文件,而是通过终端输入命令 uv run XXX.py来运行文件。

 


来源:数值分析与有限元编程
python
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-05-19
最近编辑:4月前
译码当先
本科 慢慢来
获赞 14粉丝 32文章 400课程 0
点赞
收藏
作者推荐

条件概率介绍

假定同时掷两颗骰 子得到的36个结果都是等可能地出现的,其样本空间为因而每个结果的概率为1/36。假定我们知道第一颗骰 子的点数是4,那么在已知这个信息时,两颗骰 子的点数和为6的概率是什么呢?为了计算这个概率,我们做如下推理:已知第一颗骰 子的点数是4,我们的试验至多可能出现6个结果,即(4,1),(4,2),(4,3),(4,4),(4,5),(4,6)。由于这些结果中的每一个本来就是以相同的概率发生的,它们应该仍旧有相等的概率.这就是说,已知第一颗骰 子的点数是4,则出现(4,1),(4,2),(4,3),(4,4),(4,5),(4,6)中的每一个结果的(条件)概率是1/6,而同时在样本空间中的其他30个点的(条件)概率是0。因此,所求的概率是1/6。如果记事件E={2颗骰 子的点数和为6}和F={第一颗骰 子的点数为4},那么刚才得到的概率,就称为已知F发生的条件下E发生的条件概率,记为P(E|F)。如果事件F发生,那么为了E发生,实际出现的结果必须是一个既在E中又在F中的结果,也就是必须在EF中的结果。现在,因为已知F已经发生,进而F就成为新的样本空间,因此,事件E|F发生的概率就等于EF的概率相对于F的概率,这就是例1某运输公司有两辆货车。已知某时刻至少有一辆货车处于空闲状态,则此时两辆车都处于空闲状态的概率是多少?样本空间 ,其中0表示空闲状态,1表示使用状态。记事件B={两辆车都处于空闲状态},事件A={两辆车至少有一辆货车处于空闲状态}。则B={(0,0)},A={(0,0),(0,1),(1,0)},BA={(0,0)}。两辆车都处于空闲状态的概率例2根据气象记录可知甲乙两地一年中下雨的天数所占的比例分别为20%和18%,两地同时下雨的天数所占比例为12%,计算如下概率。(1)乙地为雨天时,甲地为雨天的概率是多少?(2)甲地为雨天时,乙地为雨天的概率是多少?设A={甲地为雨天},B={乙地为雨天},则P(A)=0.2,P(B)=0.18,P(AB)=0.12(1)乙地为雨天时,甲地为雨天的概率:(2)甲地为雨天时,乙地为雨天的概率:来源:数值分析与有限元编程

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈