Python源代码“;“未声明编码”;

Python源代码“;“未声明编码”;,python,character-encoding,Python,Character Encoding,这是我的源文件的顶部: # -*- coding: UTF-16 -*- import re import unittest 尽管在文件顶部包含了声明,但在运行此命令时还是出现了一个错误:“第1行的scrapedgar/parsers/parser8kex101_tests.py文件中的非ASCII字符'\xff',但没有声明编码;有关详细信息,请参阅” 以下是完整的输出: usau810195:ScrapeEdgar reedn$ python -m unittest ScrapeEdgar

这是我的源文件的顶部:

# -*- coding: UTF-16 -*-
import re
import unittest
尽管在文件顶部包含了声明,但在运行此命令时还是出现了一个错误:“第1行的scrapedgar/parsers/parser8kex101_tests.py文件中的非ASCII字符'\xff',但没有声明编码;有关详细信息,请参阅”

以下是完整的输出:

usau810195:ScrapeEdgar reedn$ python -m unittest ScrapeEdgar.parsers.parser8kex101_tests
Traceback (most recent call last):
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/__main__.py", line 12, in <module>
    main(module=None)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 94, in __init__
    self.parseArgs(argv)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 149, in parseArgs
    self.createTests()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 158, in createTests
    self.module)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py", line 128, in loadTestsFromNames
    suites = [self.loadTestsFromName(name, module) for name in names]
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py", line 91, in loadTestsFromName
    module = __import__('.'.join(parts_copy))
  File "ScrapeEdgar/parsers/parser8kex101_tests.py", line 1
SyntaxError: Non-ASCII character '\xff' in file ScrapeEdgar/parsers/parser8kex101_tests.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
usau810195:scrapedgar reedn$python-m单元测试scrapedgar.parsers.parser8kex101\u测试
回溯(最近一次呼叫最后一次):
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py”,第162行,在运行模块中
“\uuuuu main\uuuuuuuuuuuuuuuuuuuuuuuuu”,fname,loader,pkg\u name)
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py”,第72行,在运行代码中
run_globals中的exec代码
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/__-main___;.py”,第12行,在
主(模块=无)
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py”,第94行,在__
self.parseArgs(argv)
parseArgs中的文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py”,第149行
self.createTests()
createTests中的文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py”,第158行
自我保护模块)
loadTestsFromNames中的文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py”,第128行
suites=[self.loadTestsFromName(name,module)表示名称中的名称]
loadTestsFromName中的第91行文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/loader.py”
模块=___导入__('.'.join(部分\副本))
文件“scrapedgar/parsers/parser8kex101_tests.py”,第1行
语法错误:第1行的scrapedgar/parsers/parser8kex101_tests.py文件中的非ASCII字符'\xff',但未声明编码;看见http://www.python.org/peps/pep-0263.html 详情

Python源文件不支持UTF-16编码

允许处理数据中前两行的任何编码 上述方式允许作为源代码编码,此 包括ASCII兼容编码以及某些 多字节编码,如Shift_JIS。它不包括 对所有字符使用两个或更多字节的编码,如 e、 g.UTF-16。这样做的原因是为了保留编码 标记器中的检测算法很简单


希望这有帮助。

Python源文件不支持UTF-16编码

允许处理数据中前两行的任何编码 上述方式允许作为源代码编码,此 包括ASCII兼容编码以及某些 多字节编码,如Shift_JIS。它不包括 对所有字符使用两个或更多字节的编码,如 e、 g.UTF-16。这样做的原因是为了保留编码 标记器中的检测算法很简单

希望这能有所帮助。

你试过
#coding=utf-8
吗?你试过
#coding=utf-8
吗?