os.environ详解

我们想要用Python获得一些有关系统的各种信息的时候就不得不想到os的environ,那这里面都具体包含了那些内容呢?

简介

对于官方的解释,environ是一个字符串所对应环境的映像对象。这是什么意思呢?举个例子来说,environ['HOME']就代表了当前这个用户的主目录。

例子

比如刚刚举例的os.environ[HOME]在linux中适用而在windows下面是没有这个key的,在windows下是HOMEPATH,又比如linux下的USER在windows下面对应的就是USERNAME.

总结这些差异来说,他们都是各自系统的本身特性造成的,比如你用的是gnome版的ubuntu,那么key里面就会多出一条['GNOME_DESKTOP_SESSION_ID'].

key字段详解

windows:

os.environ['HOMEPATH']:当前用户主目录。
os.environ['TEMP']:临时目录路径。
os.environ[PATHEXT']:可执行文件。
os.environ['SYSTEMROOT']:系统主目录。
os.environ['LOGONSERVER']:机器名。
os.environ['PROMPT']:设置提示符。

linux:

os.environ['USER']:当前使用用户。
os.environ['LC_COLLATE']:路径扩展的结果排序时的字母顺序。
os.environ['SHELL']:使用shell的类型。
os.environ['LAN']:使用的语言。
os.environ['SSH_AUTH_SOCK']:ssh的执行路径。

django 解决: You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.c

在文件开始加上

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djblog.settings")

注意一定要加在load model.xxx之前

目的是为了任何一个django project中的*.py文件都能够正常的使用项目中的数据模型操作

posted @ 2017-06-19 09:50  ccorz  阅读(28987)  评论(0编辑  收藏  举报