gpt4 book ai didi

python - 无法让我的代码识别特定字符串

转载 作者:太空宇宙 更新时间:2023-11-03 20:30:23 24 4
gpt4 key购买 nike

我正在为一个小型学校项目编写代码。我想读取 .txt 文件并找到“pergunta[]”和问号之间的内容,但无法让我的程序提供该信息。

我已经尝试过别人建议的here但它似乎对我不起作用,因为它没有检索到我想要的字符串,并且显然甚至没有输入 if 语句。

(“perguntas”表示问题)

import pyttsx3

speak = pyttsx3.init()

running = True
perguntas = open(r"C:\Users\jeana\Desktop\perguntas.txt", "r")
texto = perguntas.read()

while running:
if "pergunta5 " in texto:
data = texto.split("pergunta5 ")[1].split("?")[0]
print(data) #tried adding this line but it is never printed
speak.say(data)
speak.runAndWait()
running = False
print("um loop") #I added this just to know the code reaches this point
running = False

我希望我的代码能够找到“pergunta[]”(在本例中为 5,只是为了简化)和“?”之间的问题。并将其文本转换为语音,但由于某种原因,此代码仅输出听起来像“p”的内容,并且没有错误消息。我想知道我是否遗漏了一些基本的东西......

文本文件如下所示:

pergunta1 Quanto é dois mais dois? R: 4 - 2
pergunta2 Quanto é cinco menos 2? R: 3 - 2
pergunta3 Quanto é cinco menos 1? R: 4 - 2
pergunta4 A peppa pig é um? R: Porco - 3
pergunta5 Qual a cor do cavalo branco do napoleão? R: Branco - 3

编辑:我的代码的更简单版本是

text = "a lot of text with some question1 yadayadayada? question2 dayadayadaya?"
if "question1" in text:
data = text.split("question1")[1].split("?")[0]
print(data)

输出应该是:

yadayadayada

最佳答案

使用内置方法“with”读取文件,正则表达式用于分割语句“pergunta”。这里 ”。”意味着任何事情。请参阅 python 的正则表达式以获取更多说明。

import re
with open('perguntas.txt','r') as f:
content = f.read()

sp = re.split('pergunta.', content)
print(sp)

关于python - 无法让我的代码识别特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57549678/

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