我有一个列表变量,里面有一个字符串。出于某种原因,它是这样打印的:print('Value = ' + str(var))
输出:
^{pr2}$
似乎这些是str函数添加的转义引号滴答声,但我不知道如何删除它们。在
编辑:很抱歉造成混淆。下面是更完整的背景:
我正在写一个聊天分析应用程序。以下是我的信息类:class Message:
def __init__(self, name, text, likers):
self.name = name
self.text = text
self.likers = likers
def __str__(self):
return 'Message: ' + self.name + ' said "' + self.text + '", liked by ' + str(self.likers)
这是存储邮件的地方:message = data['response']['messages'][i]
user_id = message['user_id']
name = message['name'] # Sender
text = re.sub(r'\W+', ' ', str(message['text']))
likers = message['favorited_by']
msg = Message(name, text, likers)
users[user_id].messages.append(msg)
上面,data是从聊天服务器返回的JSON。i是我的变量,用于循环消息(以20块为单位接收)。users是一个将用户ID映射到用户对象(我的另一个类)的字典。由于每条消息都可以被多个用户喜欢,likers是一个用户ID的数组
当我试图打印消息时,问题就出现了。测试代码:print([str(x) for x in users[user_names['MyUser']].messages])
(user_names是一个将用户名映射到用户ID的字典)
代码打印:['Message: MyUser said "all of you", liked by [\'25843278\']', 'Message: MyUser said "why?", liked by [\'25843278\']']