python - 编辑: 什么可能导致 python 解释器在类似安装中用作主目录的目录出现奇怪的差异?
问题描述
我有一个用 python 编写的简短脚本,它将一个简单的 .txt 保存到 .py 文件所在的同一目录中。问题是:它只在我的两台计算机中的一台上这样做。我的代码不包含要写入的硬编码路径。在我的笔记本电脑上,我可以将 makemeanote.py 放在任何文件夹中,它会在那里创建笔记。在我的台式电脑上,所有笔记都以 System32 结尾。PATH 在两台机器上的设置方式完全相同,并且都使用 Windows\py.exe 作为可执行文件。
有点有趣的是,我只在台式电脑上看到一个管理屏幕,询问我是否要允许通过“内置:Release_master_v3.8.2_”等更改我的系统,而在我的笔记本电脑上它只是运行并完成它的工作。
再多的卸载和重新安装都没有改变任何东西,即使我认为我已经根除了硬盘驱动器上的任何 python 痕迹。两台 PC 都使用当前的 Win10/64 安装。
那里发生了什么?
澄清:这不是关于修复错误,而是关于理解不一致的行为!我知道我可以对任何目录进行硬编码,但这会带走美丽,你不觉得吗?
解决方案
我终于找到了奇怪行为的原因:由于某种原因,我的 WINDOWS 文件夹中的 py.exe 设置为始终以管理员身份运行。一旦我取消选中该选项,用户帐户控制(UAC)检查就消失了,我的文件最终表现得如我所料。
推荐阅读
- php - 替换嵌套在某个类中的列表项
- reactjs - 在没有第三方库的情况下克隆 React 中的嵌套状态属性?
- python - Python动画,线从移动点开始并在第二个交叉点停止
- python - Python:为什么我的模块变量会丢失它们的内容?
- c# - 内存优化:声明多个字符串变量 VS 就地使用
- php - 确定 JSON 中给出的属性是否为数组
- xaml - Xamarin 自定义面板:缺少大小类型。我需要哪些参考资料?
- ruby-on-rails - 如何在 rails 中使用 params[:search] 作为输入?
- python - 将两个日期时间对象转换为每月日期时间范围
- vue.js - 如何在 VueJS 中全局覆盖第 3 方组件的属性