Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 猜报价游戏_Python - Fatal编程技术网

Python 猜报价游戏

Python 猜报价游戏,python,Python,我计划根据我今年和朋友们收集的报价单制作一个游戏。收集的列表的格式为“quote-person” 如果我将所有引号添加到一个数组中,有人能帮我从此人处拆分引号吗 quotes=[“quote1-person1”、“quote2-person2”、“quote3-person3”] 我是否可以拆分并附加引号和人员以分离数组,这样当我运行程序时,有人看到引号后进行猜测,我需要做的就是比较数组中的位置,并检查它们是否与输入的人员匹配 如果您需要我进一步解释,请给我留言,我知道这可能是一个错误的解释最好

我计划根据我今年和朋友们收集的报价单制作一个游戏。收集的列表的格式为“quote-person”

如果我将所有引号添加到一个数组中,有人能帮我从此人处拆分引号吗

quotes=[“quote1-person1”、“quote2-person2”、“quote3-person3”]

我是否可以拆分并附加引号和人员以分离数组,这样当我运行程序时,有人看到引号后进行猜测,我需要做的就是比较数组中的位置,并检查它们是否与输入的人员匹配


如果您需要我进一步解释,请给我留言,我知道这可能是一个错误的解释

最好将信息存储在字典中,这是一个键值对列表。在这种情况下,键将是引用和值,这些引用和值将归属于谁。您可以通过执行以下操作来构建此功能:

split_quotes = (quote.split(' - ' , 1) for quote in quotes)

quote_dict = {q[0] :q[1] for q in split_quotes }
编辑:正如Serge Ballesta所指出的,如果两个人有相同的报价,则这不起作用。您可以按照建议维护配对列表:

quote_person_list = [(q[0], q[1]) for q in split_quotes]

或者使用
defaultdict

from collections import defaultdict
quote_dict = defaultdict(list)
for q in split_quotes:
    q[0] = quote
    q[1] = person
    quote_dict[quote].append(person)

并检查此列表中的成员身份。

Nice,但如果两个人有相同的报价,则第二个人将覆盖第一个人。。。成对列表更能容忍这种情况。因此,如果它是字典格式,则id需要做的所有工作都是检查附加到引号的人是否运行q[quote],然后输出引号所属的人to@SergeBallesta说得好。我应该留下这个冒犯性的错误还是重新编辑它?@你可以留下最初的口述,因为你已经添加了一个配对列表并解释了原因。根据实际使用情况,两者都可能是最合适的。