Python 如何使命令行参数对用户可见?
我正在使用Flask构建一个工具,以便在浏览器中本地查看数据。我希望将包含数据的目录作为命令行参数传递,然后将其传递给相应的路由函数以进行渲染 这就是我想要的,但是使用全局变量:Python 如何使命令行参数对用户可见?,python,flask,Python,Flask,我正在使用Flask构建一个工具,以便在浏览器中本地查看数据。我希望将包含数据的目录作为命令行参数传递,然后将其传递给相应的路由函数以进行渲染 这就是我想要的,但是使用全局变量: dataDir = None def initializeData(pathname): global dataDir dataDir = pathname @app.route('/') def home(): # Use dataDir as desired if __name__ =
dataDir = None
def initializeData(pathname):
global dataDir
dataDir = pathname
@app.route('/')
def home():
# Use dataDir as desired
if __name__ == '__main__':
initializeData(sys.argv[1])
app = Flask(__name__)
app.run()
在命令行和我的路由之间有更好的通信方式吗?您的flask应用程序具有
config
属性。此外,此代码将失败并出现NameError。你想要这样的东西:
import sys
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return 'You wanted {!r} directory'.format(app.config.get('some_setting'))
if __name__ == '__main__':
app.config['some_setting'] = sys.argv[1]
app.run()
对了,你修好了!