在Python文件中添加版权符号
我需要在每个我写的Python源文件的顶部加上版权声明:
# Copyright: © 2008 etc.
但是,当我运行这个文件时,我收到了这个错误信息:
SyntaxError: 文件 MyFile.py 第3行有非ASCII字符 '\xa9',但没有声明编码;详细信息请查看 http://www.python.org/peps/pep-0263.html。
显然,Python对版权符号不太满意,因为它认为源文件都是ASCII格式的。要么我需要在第一行加上:
# -*- coding: iso-8859-1 -*-
来告诉Python我使用的是拉丁编码,或者我可以把版权声明改成:
# Copyright: \xa9 2008 etc.
这样可能就没有同样的法律效力了。
有没有更优雅的解决办法呢?
6 个回答
把这一行放在最前面:
# -*- coding: utf-8 -*-
与大家普遍认为的答案相反,按照我所知道的,(c) 并不是一个官方认可的版权符号替代品,不过我不确定这是否在法庭上经过验证。
其实,© 只是“Copyright”这个词的缩写。说“Copyright 2008 Robert Munro”和说“© 2008 Robert Munro”是一样的意思。
你的“Copyright: © 2008 等”等于于“Copyright: Copyright 2008 等”。
维基百科的页面似乎也支持我的观点,链接在这里 http://en.wikipedia.org/wiki/Copyright_symbol
在美国,版权声明包含三个部分: 1. © 符号,或者 “Copyright”这个词,或者缩写“Copr。”; ...
在ASCII编码中,版权符号可以写作 (c)
或者 "Copyright
"。
你可以查看第61号通告,了解更多关于 计算机程序的版权注册的信息。
虽然法律上有一些正式的规定(可以参考第1号通告,版权基础知识),内容是:
符号 ©(就是一个圈里的字母C),或者“Copyright”这个词,或者缩写“Copr.”;而且...
同时也有规定:
为了在所有UCC成员国中保证版权作品的保护,通知必须包含符号 ©(“Copyright”这个词或缩写是不可接受的)
不过,这个问题在法庭上已经有过测试。其实这并不是个复杂的问题。如果你搜索“(c) 是否可以用圈里的C代替”,你会发现律师们都同意 (c) 是一个可以接受的替代方案。可以参考Perle和Williams的观点,还有Scott在信息技术法方面的看法。