Не удалось найти материала по этому вопросу.
У меня есть файл yaml, содержащий:
items :
- "jeweller's orb"
Затем я загружаю его:
with open('./configs/items.yaml') as f:
data = yaml.safe_load(f)
self.item_set = set([x.upper() for x in data['items']])
Сейчас как мне получить доступ к набору с ключом, содержащим одинарную кавычку ?? Я пробовал избежать этого, двойное одинарное цитирование, ничего не работает ...
print('JEWELLER\’S ORB' in self.item_set)
print("JEWELLER\’S ORB" in self.item_set)
print('JEWELLER’S ORB' in self.item_set)
print("JEWELLER’S ORB" in self.item_set)
print(r'JEWELLER’S ORB' in self.item_set)
print(r"JEWELLER’S ORB" in self.item_set)
Все они возвращают false. Что-то с yaml за кулисами, о котором я не знаю ??
Я пробовал также скопировать вывод переменных в self.item_set и напрямую использовать его в печати. По-прежнему ничего.
РЕДАКТИРОВАТЬ: Ответ был
with open('./configs/items.yaml', 'rt', encoding='utf8') as f:
А также использование начальной версии с одной кавычкой в yaml вместо прямой одиночной кавычки. Вау, какая боль.