我只是Python的初学者。我创建了一个名为cc.py
的文件,并保存在以下路径中:
C:/Python33/cc.py
。
我正在尝试运行此文件但没有发生任何事情。
在python shell中我输入Python cc.py
但是我收到以下错误:
SyntaxError: invalid syntax
我尝试了另一种选择:
>>> execfile('cc.py');
Traceback (most recent call last):
File "<pyshell#8>", line 1, in <module>
execfile('cc.py');
NameError: name 'execfile' is not defined
该文件包含以下代码行:
import urllib
htmlfile = urllib.urlopen("http://google.com")
htmltext = htmlfile.read()
print htmltext
我该如何运行此文件?我完全糊涂了。有人可以帮助我吗?
答案 0 :(得分:1)
在python 3中,execfile
不再存在。您可以打开它并手动执行它:
def xfile(afile, globalz=None, localz=None):
with open(afile, "r") as fh:
exec(fh.read(), globalz, localz)
执行:
>>> xfile(r'C:\path\to\file\script.py')
感谢:What is an alternative to execfile in Python 3?
这就是你从解释器执行文件的方式。
另一种方法是,您可以从命令提示符执行它。只需打开它并输入:
$ cd filepath
$ python file.py
关于您正在运行的脚本,也存在混淆。无论您遵循什么示例,它都是Python 2示例,但您使用的是Python 3.将请求行更改为:
htmlfile = urllib.request.urlopen("http://google.com")
希望这有帮助!
答案 1 :(得分:1)
print htmltext
应为print(htmltext)
。此外,{3}已从Python 3中删除。似乎您正在使用Python 2本书但运行Python 3.这些不同版本的Python不兼容,坚持一个。要选择哪个版本,请参阅this question。
execfile()
:
execfile()
答案 2 :(得分:1)
您写道:
在python shell中我输入Python cc.py但是我收到以下错误:
SyntaxError:语法无效
如果要运行python脚本,请不要从python shell执行此操作。 &#34; python&#34; (不是&#34; Python&#34;)命令需要从命令提示符(DOS shell,终端窗口等)运行。
在命令提示符下,您应该发出命令:
$ python cc.py
有关问题和解决方案的更完整描述,请参阅python用户指南的windows部分中的Executing Scripts,以及python用户指南的常见问题部分中的How do I run a python program under windows。
答案 3 :(得分:0)
import urllib.request
with urllib.request.urlopen("http://www.yourwebsiteurl.com") as url:
htmltext = url.read()
print (htmltext)