0

私の質問は、私が解決して完全に機能させることができた以前のpythonの問題に言及しています。 何かを印刷してからそのリストを印刷するにはどうすればよいですか?

最近、グローバル変数が導入されましたが、それらの使用方法がわかりません。変更が許可されていない関数が 2 つあります。

def who_exports(product):
    return products[product]

def what_exports(country):
    return countries[country]

データを準備してすべての変数を作成する prepare_data() という関数を作成する必要があり、これら 2 つの関数が機能します。who_exports と what_exports のデータを準備します。次のように動作するはずです。

who_exports("nickel")
{'Botswana', 'Colombia', 'Cuba'}

その後

what_exports("Yemen")
{' oil, coffee, fish, liquefied natural gas'}

私は試行錯誤してきましたが、グローバル名「製品、国、国、...」が定義されていないか、キーエラー:「ニッケル」を取得します。

def prepare_data():
    global products
    global product
    global countries
    global country

    countries={}
    products={}

助けていただければ幸いです、ありがとう!!

4

2 に答える 2

1

特定のを指定して、を呼び出すだけでよいので、なぜグローバルとしてcountry必要なのかわかりません。productwho_exports('nickel')product

countriesしかし、これは私がすることproductsです。

def prepare_data():
    countries = {'Yemen' : 'oil, coffee, fish, liquefied natural gas'}
    products = {'nickel' : ['Botswana', 'Colombia', 'Cuba']}
    return countries, products

countries, products = prepare_data()
于 2012-11-15T20:19:27.237 に答える
0

defaultdictリテラル辞書の代わりに使用することを検討してください。

于 2012-11-15T19:54:06.633 に答える