我想从文件系统中读取King James版本圣经的文本数据,并将该数据转换为Python数据结构访问书籍,章节和诗句以前产生的数据结构搜索KJV圣经的文本。如何返回属于该书的诗句清单
parse_line(line):
给定的文本(即,字符串)的从bible.tsv
文件中的一行,去除所有尾随空白(使用“.strip”方法)中,然后使用一个制表符分隔符(‘\ t’的)分成它
转换结果列表中的第二和第三个元素(引经据典)成整数
返回表
这是我为我的parse_line
代码。我相信这段代码是正确的。
def parse_line(line):
line = aline.strip().split('\t')
line[1] = int(line[1])
line[2] = int(line[2])
return line
parse_kjv_tsv():
创建一个空的列表提供给经文存储在bible.tsv文件
打开kjv.tsv文件进行读取
对于的每个线文件,将该行传递给parse_line并将parse_line的输出附加到一列诗句
返回创建的诗句列表
这是我为我的代码为parse_kjv_tsv()
:
def parse_kjv_tsv():
kjv_file = open('kjv.tsv', 'r')
verses = []
for line in kjv_file:
verse = parse_line(line)
verses.append(verse)
kjv_file.close()
return verses
它不返回正确的信息。我需要对于文件的每一行,将该行传递给parse_line
并将parse_line
的输出附加到一个诗句列表。然后,返回创建的诗句列表。
例如,输出应为:
>>> import bible
>>> verses = bible.parse_kjv_tsv()
>>> verses[0]
['ge', 0, 0, 'In the beginning God created the heaven and the earth.']
注意,第二和第3元素“经文[0]”为整数,而不是字符串。
访问KJV
在这个部分,你将创建功能从以前创建的Python数据结构访问的书籍,章节和诗句。您需要创建以下功能:
我需要get_book帮助(诗,书)
get_book(verses, book):
考虑:
- 经文的名单(即
- 名单:中
parse_kjv_tsv
)和 - 一本书的名字(字符串)
返回属于那本书
get_chapter(verses, book, chapter):
鉴于经文的列表输出(即输出
parse_kjv_tsv
)和 - 名单:中
- 书名(字符串)和
- 章节序号(整数)
返回属于那本书经文列表和章
get_verse(verses, book, chapter, verse):
考虑:
- 经文的名单(即的
parse_kjv_tsv
)和 - 一本书的名字(字符串)和
- 章号(整数)
- 一首诗数(整数)
返回的文本字符串输出这节经文
search_bible(verses, search_text):
考虑:
- 经文列表(即的
parse_kjv_tsv
)和 - 字符串输出这些经文
返回搜索的字典导致
我清理了问题的格式。请[请阅读此](https://stackoverflow.com/help/formatting)并确保使用适当的标记。不是所有的描述性文本都应该是粗体的(用'**'包围)或标题(用一个或多个'#'开始),并且代码块(缩进四个空格)只能用于代码或文件内容。你也一次问很多问题,这可能太广泛了。阅读[问]提出问题的提示。 – Chris
感谢您的提示。 –