我原来的2.7代码在这里:
myFile = open(prjFile, 'w+')
myFile.write("""<VirtualHost 192.168.75.100:80>
ServerName www.{hostName}
ServerAlias {hostNameshort}.* www.{hostNameshort}.*
DocumentRoot {prjDir}/html
CustomLog \\|/usr/sbin/cronolog /var/log/httpd/class/{prjCode}/\{hostName}.log.%Y%m%d\" urchin"
</VirtualHost>""".format(hostName=hostName, hostNameshort=hostNameshort, prjDir=prjDir, prjCode=prjCode))
myFile.close()
我正在尝试通过以下方式使其2.4兼容:
^{pr2}$但我的错误是
Traceback (most recent call last):
File "testfunction.py", line 20, in <module>
</VirtualHost>""" % ('hostName', 'hostNameshort', 'prjDir', 'prjCode'))
TypeError: format requires a mapping
我在这里寻找答案,但我所尝试的一切似乎都没有奏效。我做错什么了?在
您可以从格式字符串中删除名称,例如},或者将数据作为字典提供。在
%(hostNameshort)s
到{这个错误告诉我们,当一个
tuple
需要一个映射(dict
)时,您正在将tuple
传递给__mod__
。e、 g.你想要这样的东西:我还需要做一些其他的事情。我需要在这一行添加一个
^{pr2}$s
:我需要将最后一行中的
%
加倍,以转义'%Y%m%d'
中的百分号删除字符串的名称并替换“%s”的名称,然后将每个变量映射到它(必要时重复)。此外,拆除或更换零件
因为它也在尝试映射,但找不到相应的值
相关问题 更多 >
编程相关推荐