申し訳ありませんが、私はこのサイトの多くの人には非常によく知られていますが、私はかなりのレビューをしたことを誓い、ほとんどすべてがインデントと可変範囲の問題でした。それはここにあるようには見えないので、私は誰かが助けることを望んでいる。NameError:名前 'order_vals'が定義されていません。 - Python、Django
だから直前問題の変数を宣言にもかかわらず、私は私のviews.py
機能に送信するオブジェクトのリストにデータフレームを解析するために私models.py
に機能を書いていると私はタイトルで参照NameErrorを取得使用されている。コードは
# Setting some default values for our order records.
order_vals = {
'site': 'WH30-123',
'sale_type': 'CUST',
'sales_rep': 'JOHN DOE',
'customer_number': "123456789",
'cust_po_number': '{}-{}'.format(self.start_date.strftime(d_form),self.end_date.strftime(d_form)),
'fob': 'ORIGIN'
}
# Using a helper function to generate a list of orders.
orders=helpers.order_parse(ords,order_vals)
オーケーの下に表示され、私は、少し辞書を入力して関数に渡すと間違って何も見ることができない私はimport pdb; pdb.set_trace()
を使用してこのコードをステップ実行するとき、私はorder_vals
を実行することができ、それがすべて返されますだけでなく、値は私がそれらを書いたのとまったく同じです。私はここで全然迷っている。助けがあれば、ここに辞書を渡している関数があります。
def order_parse(shipments, order_values):
# Creating our empty list
orders=list()
# Iterating over each
for i,row in shipments.iterrows():
orders.append(
dict(
order_vals,**{
'shipto_number': row['shipto_number'],
'order_number': row['order_number']
}
)
)
return orders
すでにkwargs仕様を使用しても無効です。
アイデア?
私は、Pythonの専門家でないんだけど、変数が関数内で「order_values」と名付けられている(のparamsを参照)、あなたはまだ古い名前「order_vals」を使用していますそれはあなたの機能の文脈に存在しない...? – TheNightCoder
これはちょうど私が私のDjangoプロジェクトのhelpers.pyファイルにプロセスと少し異なるものを開発していたJupyterノートブックの1つのコンベンションを使用していたことです。 – RyanM