関係を定義するエレガントな方法はありますか?

pycharmant:

私は「秘密のサンタ」タイプの問題に取り組んでいます。前提として、私はグループに参加しており、その一部はパートナーである可能性があります。私が適用したい制約の1つは、このギフト交換の目的で誰かがパートナーに割り当てられるべきではないということです。私はPythonで作業しており、辞書を使用して全員のパートナーを定義するよりもエレガントな解決策があるかどうか疑問に思っています。このように定義するのは少し不格好でエラーが発生しやすいと感じます。

現在のように見えます:

partners = {
    'Roland': 'Jocelyn', 
    'Johnny': 'Moira',
    'Alexis': 'Ted', 
    'David': 'Patrick', 
    'Jocelyn': 'Roland', 
    'Moira': 'Johnny', 
    'Ted': 'Alexis', 
    'Patrick': 'David'
}

参加者のリストは、文字列の単純なリストです。すべての参加者がパートナーシップに参加しているわけではありません。

chepner:

あるセットから別のセットへの関係は、順序付けられたペアのセットにすぎません。この場合は、次のものが対称関係aに関連しているb場合にのみ場合bに関連しているがaつまり、1つの「順序付けられていない」ペア、つまりセットで2人の関係を表すことができます。

partners = [
    {'Roland', 'Jocelyn'},
    {'Johnny', 'Moira',},
    {'Alexis', 'Ted'},
    {'David', 'Patrick'}
]

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

英数字のサブタイプを定義するエレガントな方法はありますか?

分類Dev

シングルトンを定義するシンプルでエレガントな方法はありますか?

分類Dev

dtype配列の列でデータフレームを定義するエレガントな方法はありますか?

分類Dev

同期APIに基づいて非同期APIを定義するScalaのエレガントな方法はありますか?

分類Dev

よりエレガントな方法はありますか?

分類Dev

別の関数内で関数を定義するエレガントな方法

分類Dev

Javaでリストを処理するよりエレガントな方法はありますか?(Python VS Java)

分類Dev

トップレベルでReactHooks useStateを定義するよりクリーンな方法はありますか?

分類Dev

freemarkerで変数をチェックするよりエレガントな方法はありますか?

分類Dev

部分文字列を作成するためのよりエレガントな方法はありますか?

分類Dev

構造を単純な配列に縮小するエレガントな方法はありますか?

分類Dev

不規則なDatetimeIndexを作成するエレガントな方法はありますか?

分類Dev

不規則なDatetimeIndexを作成するエレガントな方法はありますか?

分類Dev

最初に「whileループ」の外側で変数を定義する必要なしに「whileループ」を使用するよりエレガントな方法はありますか?

分類Dev

Scalaでどちらかのモナドを処理するエレガントな方法はありますか?

分類Dev

switch-caseの関数からデータを変更するより効率的でエレガントな方法はありますか?

分類Dev

C ++で文字列をフォーマットするエレガントな方法はありますか?

分類Dev

Kotlinと矢印でリストをNonEmptyListに変換するエレガントな方法はありますか?

分類Dev

関数の失敗した結果をフィルタリングするよりエレガントな方法はありますか?

分類Dev

Javaの - 日付/時間を解析するエレガントな方法はありますか?

分類Dev

行列の各行のtop [2〜3]値のみを保持するエレガントな方法はありますか?

分類Dev

Pythonで相対パスを取得するためのエレガントな方法はありますか?

分類Dev

2つの要約の結果を互いに分割するエレガントな方法はありますか?

分類Dev

typescriptに値オブジェクトを含めるエレガントな方法はありますか?

分類Dev

この関数を実装するエレガントな方法はありますか: `(Monad m)=>(s-> a-> m(s、b))-> s-> [a]-> m [b]`

分類Dev

イベント/トリガーを定期的にチェックするためのよりエレガントな方法はありますか?

分類Dev

関数の引数に基づいて画像の名前を返す関数を書くよりエレガントな方法はありますか?

分類Dev

どのアクションがトリガーをトリガーするかを知らせるPostgresに定義された関数はありますか?

分類Dev

この「if」リストをよりエレガントな方法で書く方法はありますか?

Related 関連記事

  1. 1

    英数字のサブタイプを定義するエレガントな方法はありますか?

  2. 2

    シングルトンを定義するシンプルでエレガントな方法はありますか?

  3. 3

    dtype配列の列でデータフレームを定義するエレガントな方法はありますか?

  4. 4

    同期APIに基づいて非同期APIを定義するScalaのエレガントな方法はありますか?

  5. 5

    よりエレガントな方法はありますか?

  6. 6

    別の関数内で関数を定義するエレガントな方法

  7. 7

    Javaでリストを処理するよりエレガントな方法はありますか?(Python VS Java)

  8. 8

    トップレベルでReactHooks useStateを定義するよりクリーンな方法はありますか?

  9. 9

    freemarkerで変数をチェックするよりエレガントな方法はありますか?

  10. 10

    部分文字列を作成するためのよりエレガントな方法はありますか?

  11. 11

    構造を単純な配列に縮小するエレガントな方法はありますか?

  12. 12

    不規則なDatetimeIndexを作成するエレガントな方法はありますか?

  13. 13

    不規則なDatetimeIndexを作成するエレガントな方法はありますか?

  14. 14

    最初に「whileループ」の外側で変数を定義する必要なしに「whileループ」を使用するよりエレガントな方法はありますか?

  15. 15

    Scalaでどちらかのモナドを処理するエレガントな方法はありますか?

  16. 16

    switch-caseの関数からデータを変更するより効率的でエレガントな方法はありますか?

  17. 17

    C ++で文字列をフォーマットするエレガントな方法はありますか?

  18. 18

    Kotlinと矢印でリストをNonEmptyListに変換するエレガントな方法はありますか?

  19. 19

    関数の失敗した結果をフィルタリングするよりエレガントな方法はありますか?

  20. 20

    Javaの - 日付/時間を解析するエレガントな方法はありますか?

  21. 21

    行列の各行のtop [2〜3]値のみを保持するエレガントな方法はありますか?

  22. 22

    Pythonで相対パスを取得するためのエレガントな方法はありますか?

  23. 23

    2つの要約の結果を互いに分割するエレガントな方法はありますか?

  24. 24

    typescriptに値オブジェクトを含めるエレガントな方法はありますか?

  25. 25

    この関数を実装するエレガントな方法はありますか: `(Monad m)=>(s-> a-> m(s、b))-> s-> [a]-> m [b]`

  26. 26

    イベント/トリガーを定期的にチェックするためのよりエレガントな方法はありますか?

  27. 27

    関数の引数に基づいて画像の名前を返す関数を書くよりエレガントな方法はありますか?

  28. 28

    どのアクションがトリガーをトリガーするかを知らせるPostgresに定義された関数はありますか?

  29. 29

    この「if」リストをよりエレガントな方法で書く方法はありますか?

ホットタグ

アーカイブ