-
python xmxl 无法启动_Python(44)常见问题:Python在Windows上的常见问题
2020-12-30 16:29:46Python在Windows上的常见问题目录Python在Windows上的常见问题我怎样在Windows下运行一个Python程序?我怎么让 Python 脚本可执行?为什么有时候 Python 程序会启动缓慢?我怎样使用Python脚本制作可执行文件?*.pyd...Python在Windows上的常见问题
目录- Python在Windows上的常见问题
- 我怎样在Windows下运行一个Python程序?
- 我怎么让 Python 脚本可执行?
- 为什么有时候 Python 程序会启动缓慢?
- 我怎样使用Python脚本制作可执行文件?
*.pyd
文件和DLL文件相同吗?- 我怎样将Python嵌入一个Windows程序?
- 如何让编辑器不要在我的 Python 源代码中插入 tab ?
- 如何在不阻塞的情况下检查按键?
我怎样在Windows下运行一个Python程序?
这不一定是一个简单的问题。如果你已经熟悉在Windows的命令行中运行程序的方法,一切都显而易见;不然的话,你也许需要额外获得些许指导。除非你在使用某种集成开发环境,否则你将会在被称为“DOS 窗口”或“命令提示符窗口”的地方 输入 Windows 命令。通常你可以在搜索栏搜索cmd
来创建这种窗口。你应该能够识别你何时打开了这样的窗口,因为你将看到一个 Windows“命令提示符”,通常看起来是这样:
前面的字母可能会不同,而且后面有可能会有其他东西,所以你也许会看到类似这样的东西:C:\>
出现的内容具体取决与你的电脑如何设置和最近用它做的事。当你启动了这样一个窗口后,就可以开始运行Python程序了。Python 脚本需要被另外一个叫做 Python 解释器 的程序来处理。解释器读取脚本,把它编译成字节码,然后执行字节码来运行你的程序。所以怎样安排解释器来处理你的 Python 脚本呢?首先,确保命令窗口能够将“py”识别为指令来开启解释器。如果你打开过一个命令窗口, 尝试输入命令D:\YourName\Projects\Python>
py
然后按回车:
然后你应当看见类似类似这样的东西:C:\Users\YourName> py
解释器已经以“交互模式”打开。这意味着你可以交互输入Python语句或表达式,并在等待时执行或评估它们。这是Python最强大的功能之一。输入几个表达式并看看结果:>>>Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
许多人把交互模式当作方便和高度可编程的计算器。想结束交互式Python会话时,调用>>> print("Hello")
Hello>>> "Hello" * 3
'HelloHelloHello'exit()
函数,或者按住 Ctrl 键时输入 Z ,之后按 Enter 键返回Windows命令提示符。你可能发现在开始菜单有一个这样的选项 开始 ‣ 所有程序 ‣ Python 3.x ‣ Python (command line) , 运行它后会出现一个有着>>>
提示的想不出来口。如果这样的话,在调用exit()
函数或按 Ctrl-Z 组合键后窗口会消失。Windows在这个窗口中运行一个 "python" 命令,并且在你终止解释器的时候关闭它。现在我们知道py
命令已经被识别,可以输入Python脚本了。你需要提供Python脚本的绝对路径或相对路径。假设Python脚本位于桌面上并命名为hello.py
,并且命令提示符在用户主目录打开,那么可以看到类似于这样的东西:
那么现在可以让C:\Users\YourName>
py
命令执行你的脚本,只需要输入py
和脚本路径:C:\Users\YourName> py Desktop\hello.py
hello我怎么让 Python 脚本可执行?
在Windows上,标准Python安装程序已将.py扩展名与文件类型(Python.File) 相关联,并为该文件类型提供运行解释器的打开命令(D:\Program Files\Python\python.exe "%1" %*
) 。这足以使脚本在命令提示符下作为 'foo.py' 命令被执行。如果希望通过简单地键入“foo”而无需输入文件扩展名来执行脚本,则需要将.py添加到PATHEXT环境变量中。为什么有时候 Python 程序会启动缓慢?
通常,Python 在 Windows 上启动得很快,但偶尔会有错误报告说 Python 突然需要很长时间才能启动。更令人费解的是,在其他配置相同的 Windows 系统上,Python 却可以工作得很好。该问题可能是由于计算机上的杀毒软件配置错误造成的。当将病毒扫描配置为监视文件系统中所有读取行为时,一些杀毒扫描程序会导致两个数量级的启动开销。请检查你系统安装的杀毒扫描程序的配置,确保两台机它们是同样的配置。已知的, McAfee 杀毒软件在将它设置为扫描所有文件系统访问时,会产生这个问题。我怎样使用Python脚本制作可执行文件?
请参阅 cx_Freeze 了解 distutils 扩展,它允许你从 Python 代码创建控制台和 GUI 可执行文件。py2exe ,是构建基于 Python 2.x 的可执行文件的最流行扩展,它还不支持 Python 3 ,但这个版本正在开发。
是的, .pyd 文件也是 dll ,但有一些差异。如果你有一个名为*.pyd
文件和DLL文件相同吗?foo.pyd
的DLL,那么它必须有一个函数PyInit_foo()
。然后你可以编写 Python 代码 “import foo” ,Python 将搜索 foo.pyd (以及 foo.py 、 foo.pyc )。如果找到它,将尝试调用PyInit_foo()
来初始化它。你不应将 .exe 与 foo.lib 链接,因为这会导致 Windows 要求存在 DLL 。请注意, foo.pyd 的搜索路径是 PYTHONPATH ,与 Windows 用于搜索 foo.dll 的路径不同。此外, foo.pyd 不需要存在来运行你的程序,而如果你将程序与 dll 链接,则需要 dll 。当然,如果你想import foo
,则需要 foo.pyd 。在 DLL 中,链接在源代码中用__declspec(dllexport)
声明。在 .pyd 中,链接在可用函数列表中定义。我怎样将Python嵌入一个Windows程序?
在 Windows 应用程序中嵌入 Python 解释器可以总结如下:- 请 _不要_ 直接在你的 .exe 文件中内置 Python 。在 Windows 上, Python 必须是一个 DLL ,这样才可以处理导入的本身就是 DLL 的模块。(这是第一个未记录的关键事实。)相反,链接到
pythonNN.dll
;它通常安装在C:\Windows\System
中。 NN 是 Python 版本,如数字“33”代表 Python 3.3 。你可以通过两种不同的方式链接到 Python 。加载时链接意味着链接到pythonNN.lib
,而运行时链接意味着链接pythonNN.dll
。(一般说明:python NN.lib
是所谓的“import lib”,对应于pythonNN.dll
。它只定义了链接器的符号。)运行时链接极大地简化了链接选项,一切都在运行时发生。你的代码必须使用 Windows 的LoadLibraryEx()
程序加载pythonNN.dll
。代码还必须使用使用 Windows 的GetProcAddress()
例程获得的指针访问pythonNN.dll
中程序和数据(即 Python 的 C API )。宏可以使这些指针对任何调用 Python C API 中的例程的 C 代码都是透明的。Borland 提示:首先使用 Coff2Omf.exe 将pythonNN.lib
转换为 OMF 格式。 - 如果你使用 SWIG ,很容易创建一个 Python “扩展模块”,它将使应用程序的数据和方法可供 Python 使用。SWIG将为你处理所有蹩脚的细节。结果是你将链接到 .exe 文件 中 的C代码 (!) 你不必创建 DLL 文件,这也简化了链接。
- SWIG 将创建一个 init 函数(一个 C 函数),其名称取决于扩展模块的名称。例如,如果模块的名称是 leo ,则 init 函数将被称为 initleo() 。如果您使用 SWIG 阴影类,则 init 函数将被称为 initleoc() 。这初始化了一个由阴影类使用的隐藏辅助类。你可以将步骤 2 中的 C 代码链接到 .exe 文件的原因是调用初始化函数等同于将模块导入 Python !(这是第二个关键的未记载事实。)
- 简而言之,你可以用以下代码使用扩展模块初始化 Python 解释器。
#include "python.h"
...
Py_Initialize(); // Initialize Python.
initmyAppc(); // Initialize (import) the helper class.
PyRun_SimpleString("import myApp"); // Import the shadow class. - Python C API 存在两个问题,如果你使用除 MSVC 之外的编译器用于构建 python.dll ,这将会变得明显。问题1:采用 FILE* 参数的所谓“极高级”函数在多编译器环境中不起作用,因为每个编译器的FILE结构体概念都不同。从实现的角度来看,这些是非常 _低_ 级的功能。问题2:在为void函数生成包装器时,SWIG会生成以下代码:
Py_None 是一个宏,它扩展为对 pythonNN.dll 中名为 _Py_NoneStruct 的复杂数据结构的引用。同样,此代码将在多编译器环境中失败。将此类代码替换为:Py_INCREF(Py_None);
_resultobj = Py_None;return _resultobj;
有可能使用 SWIG 的return Py_BuildValue("");
%typemap
命令自动进行更改,但我无法使其工作(我是一个完全的SWIG新手)。 - 使用 Python shell 脚本从 Windows 应用程序内部建立 Python 解释器窗口并不是一个好主意;生成的窗口将独立于应用程序的窗口系统。相反,你(或 wxPythonWindow 类)应该创建一个“本机”解释器窗口。将该窗口连接到Python解释器很容易。你可以将 Python的 i/o 重定向到支持读写的 _任意_ 对象,因此你只需要一个包含 read() 和 write() 方法的 Python 对象(在扩展模块中定义)。
如何让编辑器不要在我的 Python 源代码中插入 tab ?
本 FAQ 不建议使用制表符, Python 样式指南 PEP 8 ,为发行的 Python 代码推荐 4 个空格;这也是 Emacs python-mode 默认值。在任何编辑器下,混合制表符和空格都是一个坏主意。MSVC 在这方面没有什么不同,并且很容易配置为使用空格:点击 Tools ‣ Options ‣ Tabs,对于文件类型“Default”,设置“Tab size”和“Indent size”为 4 ,并选择“插入空格”单选按钮。如果混合制表符和空格导致前导空格出现问题, Python 会引发IndentationError
或TabError
。你还可以运行tabnanny
模块以批处理模式检查目录树。如何在不阻塞的情况下检查按键?
使用 msvcrt 模块。是标准的 Windows 特定扩展模块。它定义了一个函数kbhit()
来检查是否存在键盘命中,而getch()
来获取一个字符而不回显它。 - Python在Windows上的常见问题
-
如何在各种环境下正确地安装python——在Windows上安装python3
2020-09-25 19:25:20之前那篇文章说了怎么样去在mac os x上安装系统,接下来是Windows 首先,遵守安装指引。它是Windows7+的社区系统包管理器(很像mac os x上的Homebrew) 完成之后,安装python3会非常简单,因为Chocolaty将python...之前那篇文章说了怎么样去在mac os x上安装系统,接下来是Windows
首先,遵守安装指引。它是Windows7+的社区系统包管理器(很像mac os x上的Homebrew)
完成之后,安装python3会非常简单,因为Chocolaty将python3作为默认设置
choco install python
一旦运行了上述命令,应该能够直接从控制台启动python。(choolaty非常棒,会自动将python添加到系统路径中。)
Setpuptools+Pip
setuptools 和pip是两个最重要的第三方python包
安装完成之后,可以使用单个命令下载、安装和卸载任何兼容的python应用包。还可以轻松的将这种网络安装的方式加到自己的开发的python应用中。
所有受支持的python3版本都包含pip
python -m pip install -U pip
Pipenv &虚拟环境
下一步安装Pipenv,然后就可以安装依赖并管理虚拟环境
虚拟环境工具通过为不同项目创建专属的python虚拟环境,以实现其依赖的库独立保存在不同的路径。这解决了‘项目依赖于1.x版本,但项目需要4.x’的难题,并且维持全局的site-packages目录干净、易管理。
举个例子,通过这个工具可以实现依赖Django2.0的项目与依赖Django1.8的共存
-
python3.6无法启动_python3.6怎么启动
2021-01-12 03:14:35点击这里下载注意:如果您要在Windows7上运行Python3.6版本的解释器,一定确保Windows已经安装了Win7servicepack1补丁包,否则安装Python3.6解释器会失败下载下来以后,安装的过程就和普通安装Windows软件一样,双击...Python官方的解释器安装包,可以 登录Python 官方网站 下载。
点击这里下载
注意:如果您要在Windows7上运行Python3.6版本的解释器,
一定确保Windows已经安装了 Win7 service pack1 补丁包 ,
否则安装Python3.6解释器会失败
下载下来以后,安装的过程就和普通安装Windows软件一样,双击安装即可。
注意:安装到这一步的时候,
要勾选选项 Add Python 3.6 to path, 然后点击 Customize installation
然后在这一步的时候,输入安装路径,建议输入一个较短的,没有空格和中文的路径,然后点击Install 按钮
安装好Python 后,在开始菜单里面找到Python目录,
上图箭头所指的就是Python解释器程序 Python.exe, 就可以启动python3.6的解释器了。
-
python无法启动此程序丢失zlib.dll_.dll没有被指定在windows上运行该怎么办?
2020-12-18 03:25:58很多网友提出问题,系统中的xxx.dll文件没有被指定在windows上运行。如:1)aticfx32.dll没有被指定在windows上运行或者它包含错误,如何解决?2)c:/Windows/system32/sensapi.dll没有被指定在Windows上运行,或者它...很多网友提出问题,系统中的xxx.dll文件没有被指定在windows上运行。如:
1)aticfx32.dll没有被指定在windows上运行或者它包含错误,如何解决?
2)c:/Windows/system32/sensapi.dll没有被指定在Windows上运行,或者它包含错误.是怎么回事?该怎么解决?
3)c:\Program Files\Commom.Files\M:crosoft shared\OFFICEII\MSOXMLMF.DLL没有被指定在Windows 上运行或者它包含错误,怎么办?
如何解决xxx.dll没有被指定在windows上运行的问题呢?
1、xxx.dll没有被指定在windows上运行的解决办法
方法一:完全注册系统中的.dll文件。
1、开始 - 运行输入CMD,点击确定或者按下键盘上的回车(Enter)键,打开管理员命令提示符窗口;
2、复制:for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 命令,在打开的管理员命令提示符窗口,点击左上角的小框,在下拉菜单中点击编辑 - 粘贴;
3、点击:编辑 - 粘贴以后,for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 命令就复制到了管理员命令提示符窗口中(这样操作,输入的命令不会出现错误),按下键盘上的回车键;
4、我们按下回车键以后,开始注册系统的.dll文件,窗口中的文件会不断的滚动;
5、等待一下,直至滚动停止,出现下图中最底下一行:C:\Windows\System32,退出管理员命令提示符窗口。
6、完全注册系统中.dll文件的方法,还可以用来修复下面几个问题:
1)“0x????????”指令引用的“0x????????”内存。该内存不能为“read”;
“0x????????”指令引用的“0x????????”内存,该内存不能为“written”。
2)xxx.dll丢失,系统或程序不能运行。
3)电脑上打开程序时弹出“无法定位程序输入点....... 于动态链接库...dll上。
方法二:下载xxx.dll文件复制 - 粘贴到相应的文件夹。以问题2)为例,是sensapi.dll文件
1、百度搜索输入:sensapi.dll下载,点击sensapi.dll下载网页;
2、在打开的下载sensapi.dll文件的页面,点击:脚本之家本地下载,在打开的新建下载对话框中点击:下载,并可看到下载文件保存在桌面;
3、我们在桌面上找到sensapi.rar压缩文件,左键双击;
4、在打开的解压压缩文件窗口,点击:解压到,在接着打开的解压路径和选项窗口,确定解压文件保存在桌面,再点击:确定;
5、点击桌面上的sensapi文件夹,打开文件,点击:.dll安装方法.bxt;
6、仔细阅读安装方法,从说明中可以看到,我们下载的sensapi.dll文件有32位文件(x86)和64位文件(x64)根据自己电脑系统选择x86还是x64,假设电脑的系统是Windows8的64位系统,点击x64;
7、在sensapi - x64窗口中,我们选择并点击最下面的那个(根据系统情况定);
8、在打开的窗口中,右键点击sensapi.dll,在右键菜单中点击:复制;
9、根据安装方法,我们将sensapi.dll复制到C:\Windows\System32目录下,在System32文件夹中右键点击空白处,在右键菜单中点击:粘贴;
10、回到系统桌面,点击:开始 - 运行输入:regsvr32 dll,回车。
以上即:xxx.dll没有被指定在windows上运行的解决办法,供有需要的朋友们参考和使用。
相关推荐:
-
Python2与Python3在Windows下共存
2019-03-19 14:56:42最近项目中用到的python2,但是新接触的工具框架,对于python3的支持比较好,所以就搜了一下python2与python3在Windows下共存于区分怎么用的方法。 2.运行代码 我们在安装Python3(>=3.3)时,Python的安装包... -
python的交互式启动怎么打开-Python基础教程:教你如何在交互式环境中执行Python程序!...
2020-11-11 14:15:19相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行、命令行窗口运行、开发工具上运行等,其中在不同的操作平台上还互不相同。今天,小编讲些Python基础的内容,以... -
python卸载_如何在各种环境下正确地安装python——Windows
2020-11-14 02:56:47它是Windows7+的社区系统包管理器(很像mac os x上的Homebrew)完成之后,安装python3会非常简单,因为Chocolaty将python3作为默认设置choco install python一旦运行了上述命令,应该能够直接从控制台启动python... -
python各种插件安装_如何在各种环境下正确地安装python——Windows
2021-01-15 08:31:13它是Windows7+的社区系统包管理器(很像mac os x上的Homebrew)完成之后,安装python3会非常简单,因为Chocolaty将python3作为默认设置choco install python一旦运行了上述命令,应该能够直接从控制台启动python... -
python编程案例_Python实用案例编程入门:第十五章 用Python实现Windows上的服务
2020-11-23 04:04:59本章的主题为用Python实现一个Windows上的服务,我们打开自己电脑上的服务程序,可以看到系统后台启动了很多服务。这些服务在默默的为我们提供了很多功能,可以说我们作为用户,对其看不到摸不着。如果我们也想让... -
Python基础笔记之同时装了Python3和Python2,怎么在命令行使用pip
2019-10-08 09:21:13=3.3)时,Python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:\Windows\下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是已经成功安装了Python2和Python3)。 ... -
python命令和python3命令_Python基础笔记之同时装了Python3和Python2,怎么在命令行使用pip...
2021-01-29 16:20:33=3.3)时,Python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:\Windows\下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是已经成功安装了Python2和Python3)。如果你有... -
python 程序停止打印日志_Python实用案例编程入门:第十五章 用Python实现Windows上的服务...
2021-01-02 09:29:02本章的主题为用Python实现一个Windows上的服务,我们打开自己电脑上的服务程序,可以看到系统后台启动了很多服务。这些服务在默默的为我们提供了很多功能,可以说我们作为用户,对其看不到摸不着。如果我们也想让... -
同时装了Python3和Python2,怎么在命令行使用pip
2019-08-06 14:52:31=3.3)时,Python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:\Windows\下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是已经成功安装了Python2和Python3)。 如果... -
python怎么安装matplotlib-[Python]一步步安装numpy,matplotlib
2020-11-01 13:15:31在windows系统下,同时按下 Win+R 键,打开下面的窗口。接下来,在编辑框里面输入cmd打开命令行界面,如下图:接着再输入python,同样可以启动和IDLE中的交互式窗口。如下图:假如你电脑上的显示到目前为... -
python定时启动程序_win10如何设置Python程序定时运行
2020-12-01 23:17:18最近需要在windows上定时跑python程序,于是找到了下面这篇文章:楼主最近写了一个简单的Python程序,想让这个小程序每天上午8点定时运行一次,因为我的电脑是Windows系统,无法使用Linux下强大的crontab命令,所以... -
同时装了Python3和Python2,怎么用pip?
2017-09-04 11:49:01我们在安装Python3(>=3.3)时,python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:\Windows\下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是你已经成功安装了... -
python无法启动此程序因为计算机中丢失process_python – 禁止“程序无法启动因为X.dll丢失”错误弹出窗口....
2021-02-04 03:46:11(它不能使用子进程,因为它必须向后兼容到Python 2.0.)在Windows上,有时命令引用异常目录中的DLL,因此我得到臭名昭着的“程序无法启动因为X.dll缺失”错误弹出.我的问题不是关于如何让命令找到它的所有DLL.我已经... -
分享python怎么调用解释器
2013-05-11 22:40:11如果你是linux系统的话。Python的解释器通常安装...Python安装在Windows机器上,通常是放置在C:\Python26,但你可以改变这个,当你运行安装程序。要将此目录添加到您的路径,你可以进入命令提示符在DOS框中键入以... -
怎么用python控制另一个程序正在运行中_Python检查另一个Python应用程序是否正在运行...
2020-12-20 18:21:41我有两个应用程序(从python编译,仅在Windows上运行)。第一个是计划好的:它启动,启动另一个应用程序的几个实例,然后死亡。此外,此计划的应用程序应检查以前启动的子应用程序实例是否仍在运行。在为了实现此检查... -
给Python程序制作高大上的windows安装包
2019-05-14 09:49:58上一篇文章 怎么实现软件更新? 已经说过要要结合更新到启动,实现软件启动时自动更新,这一篇我们就讲讲怎么实现这一步,另外我们还要让我们的软件像一个正常使用的软件那样实现安装。 一、启动时更新 这一步其实... -
pyinstaller 程序自动更新_给Python程序制作高大上的windows安装包
2020-11-03 18:58:38上一篇文章 怎么实现软件更新? 已经说过要要结合更新到启动,实现软件启动时自动更新,这一篇我们就讲讲怎么实现这一步,另外我们还要让我们的软件像一个正常使用的软件那样实现安装。一、启动时更新这一步其实是最... -
python笔记(1) 关于我们应不应该继续学习python
2020-12-23 16:58:48后来工作了,有时候写点代码,svn提交上去,服务器是Linux的,自己也是在windows上跑跑客户端。记得有个项目,要求用shell来启动java程序,你知道那时候我是怎么做的吗?把他们的shell拿来,问哪几个地方要改的,... -
Django 3.0+python3.7+MySQL
2020-05-22 11:22:35文章目录Django 3.0+python3.7+MySQL1. 电脑MySQL安装配置2. 创建数据库3. 创建自己的Django项目4.安装mysqlclient声明 ...安装启动参考:Windows上安装MySQL 2. 创建数据库 在连接前要先在MySQL中 -
Python-定时爬取指定城市天气(二)-邮件提醒
2019-07-11 21:55:39上一篇文章python-定时爬取指定城市天气(一)-发送给关心的微信好友中我们讲述了怎么定时爬取城市天气,并发送给指定微信好友,文末遗留两个问题 定时任务做成windows服务,这样更优雅,随开机启动 发送消息给微信... -
Gin-vue-admin是一个基于vue和gin开发的全栈前后端分离的后台管理系统,集成jwt鉴权,动态路由,动态菜单,casbin鉴权,表单生成器,代码生成器等功能,提供多种示例文件,让您把更多时间专注在业务开发上。...
-
第10讲 linux shell
2013-04-15 18:02:001、shell perl或python也很流行 shell是命令和linux内核之间的桥梁。shell将命令解释成内核可以执行的代码。 相当于windows的批处理文件:a.bat批处理文件:系统重启 os启动时会...在linux上安装samba服务器,这样w...