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

Python运行代码报SyntaxError: invalid syntax语法错误是什么原因?

错误原因
  • 核心语法错误来自Python版本不兼容:你使用的在线编译器默认运行Python 3,而你的代码使用Python 2语法。Python 3中print是内置函数,调用时必须将输出内容放在括号中,原代码print decode("/cUY")没有括号,因此触发SyntaxError。
  • 还有两处隐藏的兼容问题需要同步修复才能正常运行:
    1. Python 3中b64encode仅接收bytes类型参数,直接传入字符串'110'会触发类型错误
    2. b64decode返回结果为bytes类型,如需输出可读字符串需要额外调用.decode()方法
修正后的可运行代码
from base64 import b64encode, b64decode

k = '1de76ec9fc46fab7'

def modchar(c, i):
    return chr((((((ord(c) - 32) + i) % 94) + 94) % 94) + 32)

def decode(s):
    global k
    r = ''
    n = 0
    for i in range(len(s)):
        r += modchar(s[i], -(int(i * 1.3) + i + len(s) - ord(k[n % len(k)]) + 109))
        n += 1
    return b64decode(r).decode()

def encode(s):
    global k
    r = ''
    n = 0
    s = b64encode(s.encode('utf-8'))
    s = s.decode('utf-8')
    for i in range(len(s)):
        r += modchar(s[i], (int(i * 1.3) + i + len(s) - ord(k[n % len(k)]) + 109))
        n += 1
    return r


print(decode("/cUY"))
print(encode('110'))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 22:51:03