0

国名のセットと州名のセットを指定すると、2 つのセットを比較して、同じ 3 文字で始まる国と州が少なくとも 1 つあるかどうかを確認する関数を作成しようとしています。

すべての州名と国名の最初の 3 文字を含む新しいセットを作成するなど、これを行うためにさまざまな方法を試しましたが、うまくいかないようです。

どんな助けでも大歓迎です!

    def StartsWithSameThreeLetters(x,y):
        common = set(state[:3] for state in x) and set(country[:3] for country in y)
        length = len(x) + len(y)
        if length != len(common):
            return True
        else:
            return False

x が州名のセットで y が国名のセットの場合

4

1 に答える 1

4

集合内包表記を使用できます。

common = {country[:3] for country in countries} & {state[:3] for state in states}

Python のインストールが古すぎて使用できない場合は、常にset()次のものがあります。

set(country[:3] for country in countries)
于 2013-06-10T01:30:37.443 に答える