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

PyCharm社区版运行Python代码遇空字节ValueError求助

问题解决步骤

一、处理「source code string cannot contain null bytes」错误

这个错误是代码文件混入了不可见的空字节导致的,按以下方式解决:

  • 开启PyCharm的空白字符显示:顶部菜单栏选「View」→「Active Editor」→「Show White Spaces」,此时能看到文件里的空字节(通常显示为□类符号),直接删除这些符号。
  • 若找不到空字节,直接新建空白Python文件,手动重新输入代码(不要复制原文件内容),再运行。
  • 仍无效的话,清理PyCharm缓存:「File」→「Invalidate Caches...」,选择「Invalidate and Restart」,重启后重试。

二、修正代码本身的语法与逻辑问题

你提供的代码存在多处错误,修正后的完整代码如下:

import random  # 必须导入random模块才能使用随机数功能

def guess(x):
    random_number = random.randint(1, x)
    guess = 0
    # while循环需判断条件,输入内容转成整数才能和随机数比较
    while guess != random_number:
        guess = int(input(f'Guess a number between 1 and {x}: '))
        if guess < random_number:
            print('Too low! Try again.')
        elif guess > random_number:
            print('Too high! Try again.')
        else:
            print(f'Congratulations! You guessed the number {random_number} correctly!')

guess(10)

代码修正点说明:

  • 新增import random,否则无法调用random.randint生成随机数。
  • while循环改为判断guess != random_number,确保循环持续到猜对为止。
  • 将input获取的字符串转成int类型,否则无法和整数类型的随机数做比较。
  • 修正f-string格式,把错误的%x改成{x},正确插入变量值。
  • 添加高低判断逻辑,完善游戏交互体验。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 08:06:19