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

时间:2013-11-26 22:59:08

标签: python

我是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?

1 个答案:

答案 0 :(得分:0)

u开头的字符串是unicode。