推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
zeyexe
V2EX  ›  Python

Python 项目级别的变量应该怎么做

  •  
  •   zeyexe · Aug 3, 2016 · 5995 views
    This topic created in 3744 days ago, the information mentioned may be changed or developed.
    不使用数据库或文件,怎么实现项目范围级别的变量,可以让整个项目目录下不同文件和模块访问的变量。

    具体来说是我想设置一个项目名,可以随时读取到这个值。
    19 replies  •  2016-08-05 11:09:28 +08:00
    virusdefender
    virusdefender
    Aug 3, 2016❤️1
    1
    环境变量
    sweetpotato
    sweetpotato
    Aug 3, 2016 via Android❤️1
    2
    比如模块 settings 然后 buildin ?
    zeyexe
    zeyexe
    OP
    Aug 3, 2016
    3
    @sweetpotato 能不能解释下怎么操作?
    sweetpotato
    sweetpotato
    Aug 4, 2016 via Android❤️1
    4
    @zeyexe __builtin__.settings = settings 对于用户模块 settings 就可以直接 import settings 了,这方法不一定好😁
    zeyexe
    zeyexe
    OP
    Aug 4, 2016
    5
    @sweetpotato 不走寻常路啊
    liangmishi
    liangmishi
    Aug 4, 2016❤️1
    6
    我的想法是在项目的根目录下创建 config 文件 里面专门放这些变量,有哪个文件需要用就 from config import ...
    cxbig
    cxbig
    Aug 4, 2016❤️1
    7
    说到变量,那么改动有多频繁?如果是经常改动,放数据库;如果根据部署环境变,放.env 或其他 config 文件。
    zeyexe
    zeyexe
    OP
    Aug 4, 2016
    8
    @liangmishi 我主要是想寻找一个最简便的方法。
    chu1337
    chu1337
    Aug 4, 2016❤️1
    9
    单例?
    wqchen
    wqchen
    Aug 4, 2016❤️1
    10
    .env 文件
    abxialiang
    abxialiang
    Aug 4, 2016❤️1
    11
    cfg.py
    v1=0
    v2=1

    b.py
    import cfg
    print cfg.v1

    我就经常这么干
    sweetpotato
    sweetpotato
    Aug 4, 2016 via Android❤️1
    12
    @zeyexe 其实也没必要内置,一般导入就好
    zhuangzhuang1988
    zhuangzhuang1988
    Aug 4, 2016❤️1
    13
    参考 Django 的 config 就好。。
    mengzhuo
    mengzhuo
    Aug 4, 2016 via iPhone❤️1
    14
    必须环境变量啊
    其他的都是歪门邪道
    srlp
    srlp
    Aug 4, 2016 via iPhone❤️1
    15
    不使用配置文件,那就只有环境变量了
    bravecarrot
    bravecarrot
    Aug 4, 2016 via iPhone❤️1
    16
    为什么不放在 settings.py 里面?
    zeyexe
    zeyexe
    OP
    Aug 4, 2016
    17
    @bravecarrot 很多地方都需要这个变量,但是我并不喜欢到处 import 。
    ecloud
    ecloud
    Aug 4, 2016❤️1
    18
    似乎现在没人用 Berkeley DB 了?
    repus911
    repus911
    Aug 5, 2016❤️1
    19
    想用变量还不想到处 import...无米之炊啊 少年
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4448 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 05:46 · PVG 13:46 · LAX 21:46 · JFK 00:46
    ♥ Do have faith in what you're doing.