Python:查找字符串子串之间的关系

时间:2014-08-26 18:09:35

标签: python python-2.7

Input_Str1 = " [This set contains Apple, **Banana**, Orange] [This set contains Grapes, Pineapple] [This set contains **Banana**,Peach,Mango,strawberry ]"

我的输出应打印[1-> 3],表示第1组有一个出现在第3组中的水果香蕉

Input_Str2 = " [This set contains **Apple**, Banana, **Orange**] [This set contains **Grapes**, Pineapple] [This set contains **Apple**,Peach,Mango,strawberry ] [This set contains Papaya, Guava, **Orange**, **Grapes**"]

Output: [1->3] [1->4] [2->4] 

我能够将集合中的所有水果作为列表项提取,但无法确定如何找到不同集合的项目之间的关系。

1 个答案:

答案 0 :(得分:0)

你可以使用套装;从你的水果项目列表中创建一个集合,并使用intersection方法对其他集合进行构建,以相同的方式知道是否存在关系:

fruit_set_1  = set(fruit_list_1)
fruit_set_2  = set(fruit_list_2)
fruit_set_3  = set(fruit_list_3)

if len(fruit_set_1.intersection(fruit_set_2)):
  # relationship between 1 and 2
  ...
if len(fruit_set_1.intersection(fruit_set_3)):
  # relationship between 1 and 3
  ...