【发布时间】:2021-02-07 07:18:51
【问题描述】:
我一直在尝试创建一个系统,它将 1 和 0 的表变成盲文字符,但它一直给我这个错误
文件“brail.py”,第 16 行 stringToWrite=u"\u"+brail([1,1,1,0,0,0,1,1]) ^ SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 0-1: truncated \uXXXX escape
我当前的代码是
def brail(brailList):
if len(brailList) == 8:
brailList.reverse()
brailHelperList=[0x80,0x40,0x20,0x10,0x8,0x4,0x2,0x1]
brailNum=0x0
for num in range(len(brailList)):
if brailList[num] == 1:
brailNum+=brailHelperList[num]
stringToReturn="28"+str(hex(brailNum))[2:len(str(hex(brailNum)))]
return stringToReturn
else:
return "String Needs To Be 8 In Length"
fileWrite=open('Write.txt','w',encoding="utf-8")
stringToWrite=u"\u"+brail([1,1,1,0,0,0,1,1])
fileWrite.write(stringToWrite)
fileWrite.close()
当我执行 fileWrite.write(u"\u28c7") 时它可以工作,但是当我执行一个应该返回完全相同的东西的函数时它会出错。
【问题讨论】:
-
你能修复代码的缩进吗?如果您发布的整个代码块是您的函数的一部分,则包括
fileWrite=open()和之后的所有内容都不会运行(它在 return 语句之后)。 -
抱歉,由于某种原因,我修复了缩进,stackoverflow 搞砸了