2024-10-03 09:14:12 发布
网友
我已经创建了一个python(我正在使用2.4)脚本在中自动创建一个虚拟主机httpd.conf。但当我运行它时,会出现以下错误:
Traceback (most recent call last): File "ApaPy2.py", line 2, in ? from io import open ImportError: No module named io
这是我的剧本
io模块是在Python2.6中引入的,因此它在2.4中不存在。从documentation:
io
New in version 2.6.
^{}关键字对于您在这里所做的工作应该可以正常工作。在
我从未使用过Python2.4,但documentation表示io模块已添加到2.6版本中,因此不能在2.4中导入它。在
不过,我假设open已经是2.4中的一个内置函数,所以只要删除from io import open行就足够了。在
open
from io import open
io模块在2.4中不存在(在本例中,您不需要它来使用open)。我还将简化您的代码,以使用%代替字符串格式:
%
project = raw_input(u'Enter the name of project ') domain = raw_input (u'Enter the domain ') docroot = raw_input(u'Enter root folder ') virtualhost=u""" <VirtualHost *:80> ServerAdmin abhishek.verma@laitkor.com DocumentRoot /%(docroot)s/%(project)s ServerName %(project)s.%(domain)s.com ErrorLog logs/%(project)s.com-error_log CustomLog logs/%(project)s.com-access_log common </VirtualHost>""" f = open(u'/etc/httpd/conf/httpd.conf', u'a') f.write(virtualhost % dict(project=project, docroot=docroot, domain=domain) f.close()
io
模块是在Python2.6中引入的,因此它在2.4中不存在。从documentation:^{} 关键字对于您在这里所做的工作应该可以正常工作。在
我从未使用过Python2.4,但documentation表示io模块已添加到2.6版本中,因此不能在2.4中导入它。在
不过,我假设
open
已经是2.4中的一个内置函数,所以只要删除from io import open
行就足够了。在io
模块在2.4中不存在(在本例中,您不需要它来使用open
)。我还将简化您的代码,以使用%
代替字符串格式:相关问题 更多 >
编程相关推荐