def _show_case_studies(self): print("\nš CASE STUDIES:") for i, case in enumerate(self.analyzer.case_studies[:5], 1): print(f"\ni. case['title']") print(f" case['description'][:200]...")
def generate_study_questions(self) -> List[Dict]: """Generate study questions based on key concepts and sections""" questions = [] # Generate questions from key concepts for concept in self.key_concepts[:10]: questions.append( 'type': 'concept', 'question': f"What are the key principles and applications of concept['term'] in urban planning?", 'related_concept': concept['term'], 'hint': f"Review section discussing concept['term'] (mentioned concept['frequency'] times)" ) # Generate questions from sections for section_name, section_text in list(self.sections.items())[:5]: if len(section_text) > 100: questions.append( 'type': 'section', 'question': f"Summarize the main arguments presented in 'section_name' regarding urban planning approaches.", 'related_section': section_name, 'hint': "Focus on the key definitions and examples provided" ) # Add comparative questions if len(self.case_studies) >= 2: questions.append( 'type': 'comparative', 'question': f"Compare and contrast the urban planning approaches in 'self.case_studies[0]['title']' vs 'self.case_studies[1]['title']'.", 'hint': "Consider differences in context, implementation, and outcomes" ) return questions urban planning lecture notes pdf
def _identify_focus_areas(self) -> List[str]: """Identify areas that need more attention based on complexity markers""" complexity_markers = [ 'important', 'crucial', 'essential', 'note that', 'remember', 'key point', 'significant', 'critical', 'fundamental' ] focus_areas = [] sentences = sent_tokenize(self.full_text) for sentence in sentences: for marker in complexity_markers: if marker in sentence.lower(): focus_areas.append(sentence[:100]) break return list(set(focus_areas))[:8] case in enumerate(self.analyzer.case_studies[:5]