Advertisement
Guest User

Untitled

a guest
Mar 12th, 2013
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. a1: a2, a3, a5
  2. a2: a1, a3, a4
  3. a3: a1, a2. a5
  4. a4: a2
  5. a5: a1, a3
  6. a6:
  7.  
  8. agents = {
  9. 'a1': ['a2', 'a3', 'a5'],
  10. 'a2': ['a1', 'a3', 'a4'],
  11. 'a3': ['a1', 'a2', 'a5'],
  12. 'a4': ['a2'],
  13. 'a5': ['a1', 'a3'],
  14. 'a6': []
  15. }
  16. pairs = {(k,v) for k in agents for v in agents[k]}
  17.  
  18. pairs = {(k,v) for k,vs in agents.iteritems() for v in vs}
  19.  
  20. agents = {
  21. 'a1': ['a2', 'a3', 'a5'],
  22. 'a2': ['a1', 'a3', 'a4'],
  23. 'a3': ['a1', 'a2', 'a5'],
  24. 'a4': ['a2'],
  25. 'a5': ['a1', 'a3'],
  26. 'a6': []
  27. }
  28.  
  29. interactions = []
  30. for agent, connections in agents.iteritems():
  31. interactions.extend((agent, connection) for connection in connections if agent < connection)
  32.  
  33. print interactions
  34. # [('a1', 'a2'), ('a1', 'a3'), ('a1', 'a5'), ('a3', 'a5'), ('a2', 'a3'), ('a2', 'a4')]
  35.  
  36. >>> from itertools import combinations
  37. >>> agents=['a1','a2','a3','a4','a5']
  38. >>> list(combinations(agents, 2))
  39. [('a1', 'a2'), ('a1', 'a3'), ('a1', 'a4'), ('a1', 'a5'),
  40. ('a2', 'a3'), ('a2', 'a4'), ('a2', 'a5'),
  41. ('a3', 'a4'), ('a3', 'a5'),
  42. ('a4', 'a5')]
  43. >>>
  44.  
  45. agents = {
  46. 'a1': ['a2', 'a3', 'a5'],
  47. 'a2': ['a1', 'a3', 'a4'],
  48. 'a3': ['a1', 'a2', 'a5'],
  49. 'a4': ['a2'],
  50. 'a5': ['a1', 'a3'],
  51. 'a6': []
  52. }
  53.  
  54. pairs = {tuple(sorted((k,v))) for k in agents for v in agents[k]}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement