You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行FastAPI服务器报错ValueError:源代码字符串不能包含空字节

FastAPI启动报错:ValueError: source code string cannot contain null bytes

问题现象

执行启动命令:

uvicorn main:app --reload

出现核心错误:

ValueError: source code string cannot contain null bytes

重装Python(3.11.2)、FastAPI及Uvicorn后问题仍存在,无法访问http://127.0.0.1:8000。

完整错误日志:

PS C:\Users\obunga\OneDrive\Desktop\py\fastfast> uvicorn main:app --reload
INFO:     Will watch for changes in these directories: ['C:\\Users\\obunga\\OneDrive\\Desktop\\py\\fastfast']
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO:     Started reloader process [5464] using WatchFiles
Process SpawnProcess-1:
Traceback (most recent call last):
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\process.py", line 314, in _bootstrap
    self.run()
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\_subprocess.py", line 76, in subprocess_started
    target(sockets=sockets)
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 60, in run
    return asyncio.run(self.serve(sockets=sockets))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 653, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 67, in serve
    config.load()
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\config.py", line 477, in load
    self.loaded_app = import_from_string(self.app)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\importer.py", line 21, in import_from_string
    module = importlib.import_module(module_str)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\obunga\AppData\Local\Programs\Python\Python311\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 936, in exec_module
  File "<frozen importlib._bootstrap_external>", line 1074, in get_code
  File "<frozen importlib._bootstrap_external>", line 1004, in source_to_code
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
ValueError: source code string cannot contain null bytes

使用的main.py代码:

from fastapi import FastAPI

app = FastAPI()


@app.get("/")
def index():
    return {"lyrics": "heyyyyyyyyy"}

错误原因

该错误说明main.py文件中存在空字节(null bytes),常见触发场景:

  • 文件保存时编码异常,混入不可见二进制字符
  • OneDrive同步过程中损坏了文件(路径包含OneDrive,此概率较高)
  • 复制粘贴代码时带入隐藏特殊字符

解决步骤

  • 重新创建代码文件:不要直接复制原文件内容,手动重新输入代码,或用纯文本编辑器(如VS Code、Notepad++)新建文件写入代码,彻底清除残留空字节。
  • 更换存储路径:将代码文件夹从OneDrive同步目录移到本地非同步目录(如C:\Users\obunga\Desktop\py\fastfast),避免同步机制损坏文件。
  • 检查文件编码:确保main.py使用UTF-8无BOM格式编码(VS Code右下角可查看/修改编码),BOM头可能被解析为异常字符。
  • 禁用重载模式测试:先执行uvicorn main:app(去掉--reload参数)启动服务,如果能正常运行,说明重载模式的文件监控触发了空字节读取问题,再聚焦修复文件本身。

内容的提问来源于stack exchange,提问作者sohdata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 16:33:08