我想知道是否可以同时将变量存储在不同的数组中,目的是说“如果在此列表中,请执行此操作,如果也在此列表中,请执行此操作”。基本上,我想看一些共享变量的例子,但是当我查找它时,我看到的大部分只是网络东西,这不是我想要的东西,或者它不是在python中,也不是我想要的东西对于。
Class_skills=[Appraise, Diplomacy, Hide]
Skills_Charisma=[Diplomacy, Bluff]
if i in Class_skills and i in Skills_Charisma:
RankCalc=Ranks+Player_Attributes.Charisma
我更希望了解在python中是否可以进行类似的操作,或者是否可以以不同的方式模拟相同的结果。
答案 0 :(得分:0)
您看起来像是Stackoverflow的新手。通常,您应该提供尝试过的代码以及收到的任何错误消息。
听起来,您的问题是在这种情况下查看列表是否重叠,看看diplomacy
和Skills_Charisma
数组中是否都包含Class_skills
。
您可以使用set
操作来找到两者的交集。
list(set(Class_skills) & set(Skills_Charisma))
您可以使用if语句进行测试,以将true / false变量包装在操作周围
bool(list(set(Class_skills) & set(Skills_Charisma)))
答案 1 :(得分:0)
首先,似乎您不熟悉stackoverflow,应该阅读如何提出问题,必须提供尝试的代码以及收到的错误。
无论如何,您将学习如何针对您提供的这段代码键入一个好的问题:
Class_skills=[Appraise, Diplomacy, Hide]
Skills_Charisma=[Diplomacy, Bluff]
if i in Class_skills and i in Skills_Charisma:
RankCalc=Ranks+Player_Attributes.Charisma
此代码中的问题:
Skills_Charisma
这样的大字母来定义事物,最好将其设为skills_charisma
i
不在列表中,因此它不会执行IF语句中的内容,因此您的代码应该是这样的class_skills = ['Appraise', 'Diplomacy', 'Hide']
skills_charisma = ['Diplomacy', 'Bluff']
if 'Diplomacy' in class_skills and 'Diplomacy' in skills_charisma:
RankCalc=Ranks+Player_Attributes.Charisma
在python 'Diplomacy'
中必须提及的地方与'diplomacy'
不同
希望这会有所帮助