From 47cf3dc81b61a1c94e58527bc8d9e84a8bc978bb Mon Sep 17 00:00:00 2001 From: Kenneth Reitz Date: Thu, 24 Apr 2025 15:01:40 -0400 Subject: [PATCH] Add iter_books method to Bible class for book iteration --- kjv.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/kjv.py b/kjv.py index a02a985..f065568 100644 --- a/kjv.py +++ b/kjv.py @@ -25,6 +25,19 @@ class Bible: text=self.verses[verse], ) + def iter_books(self): + """ + Iterates over the books in the Bible. + """ + yielded = set() + + for verse in self.verses: + verse_ref = VerseReference.from_string(verse) + if verse_ref.book in yielded: + continue + yielded.add(verse_ref.book) + yield verse_ref.book + def iter_verse_references(self): """ Iterates over the verse references in the Bible. @@ -77,6 +90,8 @@ print(VerseReference.from_string("John 3:16")) bible = Bible() -for verse in bible.iter_verses(): +for verse in bible.iter_books(): print(verse) + # print() + # print(verse) # break # Just print the first verse for demonstration