Python中的名称空间问题
我正在使用一个程序,其中Python是本机脚本语言。不幸的是,它们有一个本机函数,使用名称Python中的名称空间问题,python,namespaces,Python,Namespaces,我正在使用一个程序,其中Python是本机脚本语言。不幸的是,它们有一个本机函数,使用名称bytes。当我试图使用实际的bytes内置函数时,这会导致一个问题,它认为我在引用该内置变量。我将向您展示我的意思,一个对象作为以下内置代码: def receive(row, table, message, bytes): #This is defined in the GUI 因此,行、表、消息和字节都作为参数传入,有效地覆盖了名称字节。因此,如果我说bytes(something).de
bytes
。当我试图使用实际的bytes
内置函数时,这会导致一个问题,它认为我在引用该内置变量。我将向您展示我的意思,一个对象作为以下内置代码:
def receive(row, table, message, bytes):
#This is defined in the GUI
因此,行
、表
、消息
和字节
都作为参数传入,有效地覆盖了名称字节
。因此,如果我说bytes(something).decode()
我会得到一个TypeError:“bytes”对象不可调用
有没有办法摆脱这种困境?你的问题与之类似。只需将内置的
作为_字节导入字节
;这将允许您执行\u字节(某物)。decode()
尽管重命名第四个参数是更好的解决方案。为第四个参数使用不同的名称(如果可以更改函数的签名)
def receive(row, table, message, bytes_):
#This is defined in the GUI