【问题标题】:Syntax error when trying to run server.py through command prompt尝试通过命令提示符运行 server.py 时出现语法错误
【发布时间】:2018-07-03 14:35:01
【问题描述】:

这是我要运行的代码

import socket               


s = socket.socket()         
print ("Socket successfully created")

port = 12345                

s.bind(('', port))        
print ("socket binded to %s" %(port))

s.listen(5)     
print ("socket is listening")


while True:
   c, addr = s.accept()     
   print ('Got connection from', addr)
   c.send('Thank you for connecting')
   c.close()

此代码运行成功,但是当我尝试运行这些命令时出现问题:

# start the server
$ python server.py
# keep the above terminal open
# now open another terminal and type:
$ telnet localhost 12345

即将发生的错误:

当我输入$ python server.py 时,我遇到了同样的错误。 一个可能的解决方案是我没有正确设置我的环境变量,但是当我在命令提示符下键入 python 时,我没有收到任何错误。 我做错了什么?

我从Here (Python socket network programming)复制了这段代码 PS:我用的是3.4.3版本

【问题讨论】:

  • 你在 python shell 中运行它。你只需要在一个 cmd 窗口中运行它。
  • 从终端而不是 python shell 运行 python server.py
  • 正如错误所说,$python ... 是无效的 python 语法。
  • 请不要显示代码图片。花时间正确剪切、粘贴和格式化信息。
  • 如果它告诉你“没有这样的文件或目录”,这意味着——你告诉它运行“server.py”但“server.py”在当前不存在目录。

标签: python python-3.x python-sockets python-webbrowser python-server-pages


【解决方案1】:

Python 文件必须从命令提示符而不是从 shell 运行

运行python文件的语法是

python "full path of python_file.py"

【讨论】:

  • 我现在遇到的错误:python: can't open file 'server.py': [Errno 2] No such file or directory。你能告诉我现在出了什么问题吗?
  • @sajal 你输入了python文件的完整路径吗?
  • 您的回答略有错误。您不必提供 python 文件的完整路径。相对路径工作得很好。
  • 是的,但是由于文件不在当前目录中,我们需要输入完整路径
  • @Sajal 在双引号中添加所有内容,如果仍然无法正常工作,请在其前面添加 python
猜你喜欢
  • 2020-10-31
  • 1970-01-01
  • 2019-03-21
  • 2021-01-07
  • 2019-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-02
相关资源
最近更新 更多