前提・実現したいこと
関数の戻り値を任意の名前にしたいです。
調べている中でparameter and globalは一緒にしたらダメなんだろ~な~と思ったりしたのですが、(関数に代入した引数をグローバル変数にしたい。)
近い結果を得られる方法があれば教えて頂きたいです。
発生している問題・エラーメッセージ
name 'file_name' is parameter and global
該当のソースコード
#cv2で日本語が入ったファイルを読み込むため & カラースケール、グレースケールなど名前を変えて読み込むために定義しています。 def imread(file_path, color_function=cv2.IMREAD_COLOR, dtype=np.uint8 , file_name=img): try: file = np.fromfile(file_path, dtype) global file_name file_name = cv2.imdecode(file, color_function) return file_name except Exception as e: print(e) return None ------------単純にした形------------ def y(A="name"): global A A = 100 return A y(A='B') print(B) # name 'A' is parameter and global
試したこと
とりあえず単純にしてみたり、なんとなくglobalを外に出してみたりしました。 def y(A="name"): global name name = 100 return name y() print(name) #100 ↓↓↓ def y(A="name"): global A A = 100 return A y(A='B') print(B) # name 'A' is parameter and global ↓↓↓ global A def y(A="name"): name = 100 return name y(A='B') print(B) #name 'B' is not defined
補足情報(FW/ツールのバージョンなど)
python3,jupyternotebook
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/15 21:47