我正在開發一個顫振專案,我使用 python 作為后端。我想使用os.system(). 但在此之前,我想要一些應該在os.system(). 但是這個命令總是先運行的問題。有沒有辦法讓它等到代碼被執行,然后它將運行最后一個,或者是否有另一個命令可以完成相同的作業。或者我可以在我的情況下提出一個條件讓它等待。非常感謝任何幫助。
這是我的代碼:
import json
import linecache
import os
import glob
import subprocess
from dotenv import load_dotenv
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/', methods=['POST','GET'])
def foo():
# write into .text.txt
if request.method == 'POST':
data = request.json
json_object = json.dumps(data)
files = glob.glob('var.json')
for f in files:
os.remove(f)
with open('var.json', 'a') as file:
file.write(json_object)
envdata = json.load(open('var.json'))
files = glob.glob('.env')
for f in files:
os.remove(f)
f = open(".env", "a")
for key, value in envdata.items():
f.write(f"{key.upper()}={value}\n")
os.system("flutter run")
return "hello world"
# run flutter to generate ios and apk using run methods process to run flutter app from python flutter build apk / flutter build ios. I can do it
# zip ios and apk
# send zip to client using email adres
if __name__ =='__main__':
app.run()
uj5u.com熱心網友回復:
可能您要在之前運行的行是異步任務,這就是 os.system 在它之前執行的原因。您可以在該行之前添加“await”關鍵字 -
await "the async line"
os.system("flutter run")
希望能幫助到你。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/482460.html
