gpt4 book ai didi

python - 如何在 Python 中创建由多个列表的元素组成的主列表?

转载 作者:行者123 更新时间:2023-11-28 22:32:11 24 4
gpt4 key购买 nike

我的代码应该做的是遍历一个文本文件(我用 linenum 作为键存储在一个字典中),然后在每一行中搜索一个词Lwordli。如果程序找到该词,则循环遍历存储在我的 MasterLi 中的不同列表,以确定该句子中的一个或多个其他词是否与列表中的内容相匹配。如果是,则执行 condition,如果不是,则转到 elif 条件并检查另一个列表等。然后对 txt 中的每个句子执行此操作

我有多个列表,我需要将它们存储在 1 个 master 中以用于 if-else 语句。我目前正在尝试这样的事情:

Li1 = []
Li2 = []

MasterLi = Li1, Li2

Lwordli = []

然后这是一个示例,它需要如何使用我的一些实际代码在我的代码中运行,它会返回一个错误,如果有人能想到比四个 For 循环更好的方法,那会很有帮助,但是主要重点是如何从 Master 中调用单个列表:

for key, value in Txt.items()
for cword in MasterLi: #Outer List loop
for lword in lwordli:
for section in value:



pattern = r'\b' + re.escape(lword) + r'\b.*\b' + re.escape(cword) + r'\b|\b' + re.escape(
cword) + r'\b.*' + re.escape(lword) + r'\b'

if re.search(pattern, section, re.I | re.M):

if cword in Li1:

# Do condition


elif cword in Li2:

# Do condition etc.

回溯错误

    Traceback (most recent call last):
File "C:/Users/Lewis Collins/PycharmProjects/Test/main.py", line 134, in <module>
languagemodel()
File "C:/Users/Lewis Collins/PycharmProjects/Test/main.py", line 94, in languagemodel
cword) + r'\b.*' + re.escape(lword) + r'\b'
File "C:\Users\Lewis Collins\AppData\Local\Programs\Python\Python35-32\lib\re.py", line 267, in escape
return bytes(s)
TypeError: 'str' object cannot be interpreted as an integer

我相信这个错误是由于我试图将列表存储在要调用的主列表中的方式引起的,因为如果我尝试执行 for 循环,我的代码工作完美:

for word in Li1:

最佳答案

要创建包含所有列表元素的主列表,您可以使用 + 运算符,即 MasterLi = Li1 + Li2。您也可以通过使用列表的extend 方法来实现这一点。您当前的方法是创建一个列表元组,这似乎不是您需要的。

关于python - 如何在 Python 中创建由多个列表的元素组成的主列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41220987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com