我正在尝试使用.join删除括号和逗号。它在我的程序的其他地方工作,但不在这里。这是代码:
def load():
fileName = raw_input("Please enter the name of the save file to load. Please don't enter '.txt'.")
return open(fileName+".txt", "r")
fileToLoad = load()
fileData = fileToLoad.readlines()
code = (fileData[4])
splitcode = "".join(code)
print code
print splitcode
我得到的两个输出都是:
['Y', 'G', 'R']
['Y', 'G', 'R']
我认为第二个输出应该是:
YGR
感谢您的帮助!
答案 0 :(得分:0)
code
似乎是文字字符串“['Y', 'G', 'R']
”,而不是join
按预期工作所需的列表。最简单的方法是首先通过调用ast.literal_eval
将code
转换为列表,或者,如果您可以绝对确定该文件的内容不包含任何恶意或格式错误,{{3} }。
答案 1 :(得分:0)
您可以尝试将其转换为有效的JSON然后加载它,而不是像eval
那样做一些危险的事情。
code = code.replace("'", '"')
listified = json.loads(code)
joined = ''.join(listified)