שיעור לייב עם ים - 1/12 - שבוע 14 שיעור 1

תגיות:

https://www.youtube.com/watch?v=TnJxk4gH56c&feature=youtu.be

5 לייקים

כדאי להצטייד באוזניות

משהו שלא כול כך ברור לי עם json,
כשאני מנסה באמצעות הפונקציה json.loads() , להמיר מחרוזת לרשימת מילונים אני מקבל את השגיאה:

JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 3 (char 2)

ניסיתי להריץ את השורה הבאה:

for line in movies.genres:
print(json.loads(line))

בוידאו של ים זה כן עבד בלי הבעיה…

ממה שראיתי באינטרנט הפונקציה json.loads מקבלת מילון, וראיתי שפה היא מקבלת רשימה של מילונים ואולי פה משהו לא מסתדר.

ככה נראה הדאטה שלא עובר המרה:
[{‘id’: 16, ‘name’: ‘Animation’}, {‘id’: 35, ‘name’: ‘Comedy’}, {‘id’: 10751, ‘name’: ‘Family’}]

מה הסוג של המידע שלא עובר המרה?
הוא צריך להיות string

לייק 1

טוב הבנתי שהבעיה שלי הייתה שאצלי הערכים במחרוזת היו עם צ’וקו אחד, וכדי לעשות המרה עם json.loads צריך שבמחרוזת יהיו שתי צ’וקיים, השתמשים בפונקציית replace.