首页 > 解决方案 > Python 和 Mysql 元组搜索

问题描述

你好,下午好!!!我是 Python 编程的新手,最近在大学找到了一份工作,使用所需的语言来实现与 akinator 类似的程序,为了更容易,我决定使用 Python。这个想法是询问用户问题,并根据获得的答案仅返回一个值。我在 mysql 测试库中进行了此操作,静态的,代码中有“引导”问题,最后使用所有参数进行选择。但是,这种方法创建银行并让用户回答非常费力,因为它必须回答 50 个问题才能获得唯一的结果。我当时想制作一张问题表和一个结果表。我的想法是提出随机问题并在问题中使用 id 进行选择。示例: - 汽车是菲亚特品牌吗?根据答案,我想选择,存储满足条件的结果,然后通过仅对这些已过滤的值应用新选择来提出新问题。有了这个,我相信问题的数量会更少,并且可以随机提问(老师的要求之一)。但是,我不知道如何在实践中应用它,即如何将结果存储在某处,并仅重新选择那些存储的值。这个循环将一直进行到结果 = 1。你能帮我吗?遵循你到目前为止所做的事情。即如何将结果存储在某处,并仅重新选择那些存储的值。这个循环将一直进行到结果 = 1。你能帮我吗?遵循你到目前为止所做的事情。即如何将结果存储在某处,并仅重新选择那些存储的值。这个循环将一直进行到结果 = 1。你能帮我吗?遵循你到目前为止所做的事情。

import pymysql

con = pymysql.connect('localhost', 'root', '', 'python')

with con:
    cur = con.cursor()
    cur.execute("SELECT VERSION()")
    version = cur.fetchone()
    print("Database version: {}".format(version[0]))

print("Hello I am the diviner!!!")
print("Think of something and I will guess !!!")
print("Answer the questions using 's' for YES and 'n' for NO followed by ENTER !!!")
comecar = input("We can start?\n")
if comecar == "S":
    print("There goes the first question")
else:
    print("Try again")
vmarca = input("The car and brand FIAT?\n")
vportas = input("The car has 2 doors?\n")
vpotencia = input("The car is 1.0?\n")
vtipo = input("Is the car utility?\n")
vtipo2 = input("Is the car hatch?\n")
qry_p = ("SELECT nome  FROM resultados where fiat = '"+vmarca+"'AND 2portas='"+vportas+"'AND pot='"+vpotencia+"'AND utilitario='"+vtipo+"'AND hatch='"+vtipo2+"'")
cur.execute(qry_p)
result = cur.fetchone()
print("The car you thought is", result)

标签: pythonmysql

解决方案


推荐阅读