お世話になります。
以下のように2つのpyファイル間の変数を取得して
main.pyでprint(sub.function.hoge)でthis is testを表示させるにはどうしたらいいのでしょうか?
main.py
# !/usr/bin/env python # coding: utf-8 import sub print(sub.function.hoge)
sub.py
# !/usr/bin/env python # coding: utf-8 def function(): hoge = "this is test" return hoge
それ以前に、そもそも、sub.py で実行しても、
function.hoge
では、this is test を表示させることができないです。ご確認ください。
ありがとうございます。修正しました。
ご修正ありがとうございます。
しかし同様に、sub.py で実行しても動かないと思います。
関数の中のローカル変数はプロパティとは異なり、外部からアクセスできません。
rikapy さんが想定されているのはクラスなどのふるまいではありませんか?
こちらこそありがとうございます。
実はsub.pyでoutput123.txtといったテキストを作成します。
このファイル名「output123.txt」をmain.pyに引き継ぎたいです。main.pyでoutput123.txtが開ければベストです。
沢山のユーザが一度に使用する可能性がある為tempフォルダにoutput201900909.txtを格納すると重複する恐れがありますので自分でかんがえて却下しました
私が実現したい事は関数では実現できないのでしょうか?逆にクラスだと実現できるのでしょうか?クラスは設計図のようなもので継承して利用するには便利ですがPyファイル間でもクラスだけ利用ができるイメージがあまり湧いていません
ご提示のコードで、main.pyから this is test を表示させる、ということであれば、
print( sub.function() )
だと思いますが、そういう話ではないのですよね?
https://teratail.com/questions/210460
実際の話は上記質問に記載していますのでご確認・ご回答いただければ幸いと存じます
8時間ハマってます泣