我的程序应读取.txt文件并在窗口中打印内容,但是输出中有这些奇怪的'{'和'}'字符。 txt文件在一行上包含一个或多个单词。
我尝试替换字符,但是最后只用一行,这是我不希望的。
这是我到目前为止的代码:
if name == "<name>":
file = open("<name>.txt", "r")
wishlist = file.readlines()
listtext.setText(wishlist)
运行时,窗口中的输出看起来(例如)如下:
{Television
}{Alarm Clock
}{Lamp
}
当我希望显示时不带'{'和'}'
谢谢!
答案 0 :(得分:1)
我认为这是您需要的小修改
if name == "<name>":
file = open("<name>.txt", "r")
wishlist = file.readlines()
wishlist=[i.replace('{','') for i in wishlist] # removes all {s from all indices
wishlist=[i.replace('}','') for i in wishlist] # removes all }s from all indices
listtext.setText(wishlist)
答案 1 :(得分:0)
原因是您使用了readlines()方法,该方法返回文件中的行列表。因此,您的列表文本中可能有一些方法将{和}附加到列表的每个元素
答案 2 :(得分:0)
您可以在一个简单的循环中使用String.replace(char,“”)函数删除不需要的字符,并且不影响输出的其余部分。
s='''{Television
}{Alarm Clock
}{Lamp
}'''
remove='{}'
for char in remove:
s = s.replace(char, " ")
print(s)
输出:
Television
Alarm Clock
Lamp