こんにちは。
まず、プログラムの説明をさせていただきます。
これは、 PC を触りすぎてしまう自分への対策として作ったプログラムです。
まず、 ファイルO の
今日は何分以内に終わるようにする??
という input() 文から、制限時間の変数 lim に値を代入します。
すると、 ファイルA と ファイルB が開き、
A ではカウントダウンが始まります。
一方、 B とは、 log を保存するか尋ねるウィンドウです。
"はい"を選択した場合に、その時の時刻を ファイルZ に書き込むことはできたのですが、
その時の lim の値を ファイルB より取得する方法が分かりません。
そういったことも可能にするプログラムはありませんか?
もしありましたら、ぜひご紹介をお願いします!!
ファイル O ????
Python
1import os 2import sys 3 4lim = input("本日の制限時間は : ") 5os.system("start A.py {}".format(lim)) 6os.system("start B.py")
ファイルA ????
Python
1import time 2import os 3import sys 4 5 6lim = sys.argv[1] 7i = 0 8 9while True : 10 print("-"*60) 11 print(f""" 12 13 14 ################################## 15 # # 16 # # 17 # {i} minutes have passed # 18 # # 19 # # 20 ################################## 21 22 あと{lim}分 23 24 """) 25 26 27 i += 0.5 28 lim -= 0.5 29 time.sleep(30) 30
ファイルB ???? (ここがわかりません...)
Python
1 2import time 3import os 4import sys 5from datetime import datetime 6 7 8while True : 9 response = input("logを保存するか。 (y / n) : ") 10 if response == "y" : 11 file = "Z.txt" 12 with open(file, mode='a',encoding="utf_8") as fileobj : 13 now = datetime.now() 14 fileobj.write(str(now)+"\n") 15 break 16 if response == "n" : 17 break 18 19# y が押されたときのlimの値を取得し、べつのファイルZに記録として書き込みたいのです。
( `・∀・´)ノ 追記です :
コードはすべてwindowsコマンドプロンプトからの実行です。
なぜファイルを分けたのですか?また、ファイルAが実行されているタイミングでファイルBは実行されないと思うのですが、どうやってファイルAの実行を止めているんですか?
というか、startってなんだろ…。いろいろ元のコードから書き換えていませんか?
どうやら私は変なコードを書いてしまったようで、すみません。まず、ファイルを分けたことに意味はありません。また、ファイルAを閉じる際は右上の✖から閉じています。それから、startと書くのはこれがないと、うまく実行できないでからです。
ということは、どうやらWindowsのコマンドプロンプトから実行しているのですね。A.pyも新しいプロンプトが開かれるということですね?こういった状況をきちんと書いたほうがいいと思います。
なるほど!これから追記することにします、ありがとうございますヽ(^。^)ノ
回答1件
あなたの回答
tips
プレビュー