从批处理文件运行

时间:2020-02-29 14:53:45

标签: python sockets batch-file server pycharm

我已创建一个批处理文件,该文件正在打开我编写的 Python代码 PyCharm 中。但是,当我打开正在打开我的 Python代码批处理文件时, 然后 PyCharm 会随机打开,我不知道为什么。

例如:

如果我创建了一个 Python代码,上面写着print('Hello World'),当我制作了一个批处理文件时 应该会打开该代码,然后批处理文件应该只说Hello World。 但就我而言,什么也没有发生,而 PyCharm 正在打开。而且我不知道为什么。 我什至试图将相同的 code 复制到另一个编程程序 Visual Studio Code 中。 我执行了相同的代码,创建了一个批处理文件,该文件应打开 Python文件/脚本,甚至 即使我创建的代码来自另一个程序,也会打开 PyCharm

代码如下所示:

import socket

HOST = '127.0.0.1'
PORT = 3759

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(), PORT))
s.listen(5)

while True:
    clientsocket, address = s.accept()
    print(f"Connection from {address} has been established!")
    clientsocket.send(bytes('Welcome to the server!', "utf-8"))

批处理文件如下所示:

@ECHO OFF
color 0a
"c:\Users\golle\PycharmProjects\Test\server.py

我知道只是通知您没有任何错误。因此,我创建的代码是打开服务器, 批处理文件正在打开服务器,方法是进入其文件夹并启动 server.py 包含服务器的代码的文件。然后,当我单击批处理文件时,会打开 PyCharm ,并且服务器没有打开。

因为应该发生的是,当我单击批处理文件时,服务器应该启动 无需打开 PyCharm 。当我通过 client.py 登录服务器时,服务器窗口 我通过批处理文件打开的消息应该说:

Connection from {address} has been established!

但是它不起作用。

奇怪的是,它的工作就像几天前一样,但是昨天当我要再次尝试时,它却没有工作,就像我说的那样, PyCharm 正在随机开放。

如果您知道解决此问题的方法,我们将不胜感激。谢谢!

btw:我在以下链接的视频的帮助下创建了服务器:https://www.youtube.com/watch?v=Lbfe3-v7yE0

1 个答案:

答案 0 :(得分:3)

我认为Pycharm随机打开的原因是因为在Windows计算机上,这是打开Python文件的默认应用程序。运行"c:\Users\golle\PycharmProjects\Test\server.py"本质上与从文件资源管理器双击相同。

您需要做的是让python执行文件,而不是尝试直接运行文件。

它看起来像这样:

python "c:\Users\golle\PycharmProjects\Test\server.py"

这假定python在您的PATH中。