Python函数输入相同,但不起作用

Python函数输入相同,但不起作用,python,Python,我是Python新手,不知道为什么这不起作用 我正在修改一些现有的代码。在其中一个调用中,它的值是硬编码的,我想给我们输入一个值。现在两者完全相同,我将它们打印出来进行测试,但当我将它们传递到函数中时,一个工作,另一个不工作 这是一种类型的东西,我以为Python会自动为您转换东西,或者根本不在乎 class Client( threading.Thread ): HOUSIMFILE = 'C:/projects/HoudiniCom/RamCode/houdini/hip/fu

我是Python新手,不知道为什么这不起作用

我正在修改一些现有的代码。在其中一个调用中,它的值是硬编码的,我想给我们输入一个值。现在两者完全相同,我将它们打印出来进行测试,但当我将它们传递到函数中时,一个工作,另一个不工作

这是一种类型的东西,我以为Python会自动为您转换东西,或者根本不在乎

class Client( threading.Thread ):
    HOUSIMFILE    = 'C:/projects/HoudiniCom/RamCode/houdini/hip/fu_sim_fullroom_crdpump_hydunit_multiple_wshader_v13b.hipnc'

....
def run(self):
    try:
        print self.__class__.HOUSIMFILE
        print inPacket.actionData.itemName #printed text is the same

        #hou.hipFile.load(self.__class__.HOUSIMFILE, True ) #This call works
        hou.hipFile.load(inPacket.actionData.itemName, True ) #This call fails
    except:
        print "FUSimServer: Can't Start Simulation"
        pass
编辑 使用repr,我得到以下结果

‘C:/projects/HoudiniCom/RamCode/houdini/hip/fu_sim_fullroom_crdpump_hydunit_multiple_wshader_v13b.hipnc’

u'C:/projects/HoudiniCom/RamCode/houdini/hip/fu_sim_fullroom_crdpump_hydunit_multiple_wshader_v13b.hipnc'


为什么第二个前面有一个u?

以u开头的字符串是unicode。

它们不一样。。。尝试打印reprself.\uuuu class\uuuuuuu.HOUSIMFILE并打印reprinPacket.actionData.itemName和compareYour'C:/projects/HoudiniCom/RamCode/houdini/hip/fu\u sim\u fullroom\u crdpump\u hydunit\u multiple\uwshader\u v13b.hipnc:/projects/HoudiniCom/RamCode/houdini/hip\u sim\u fullroom\u crdpump\u hydump\u hydunit\u multiple\uwhader v13b.hipnc为什么前面有一个u,这两条载重线的顺序如何?可能是因为你加载了两次文件导致了问题?我只调用了其中一个,我只是把两个都放进去展示。好的,明白了,我只需要用str loadstrvarnmath来包装它。竖起大拇指!