草庐IT

OS-level

全部标签

python - os.getenv 和 os.environ 看不到我的 bash shell 的环境变量

我在ubuntu13.04,bash,python2.7.4解释器看不到我设置的变量。这是一个例子:$echo$A5$python-c'importos;printos.getenv("A")'None$python-c'importos;printos.environ["A"]'Traceback(mostrecentcalllast):File"",line1,inFile"/usr/lib/python2.7/UserDict.py",line23,in__getitem__raiseKeyError(key)KeyError:'A'但是PATH变量一切正常:$echo$PATH

python - os.getenv 和 os.environ 看不到我的 bash shell 的环境变量

我在ubuntu13.04,bash,python2.7.4解释器看不到我设置的变量。这是一个例子:$echo$A5$python-c'importos;printos.getenv("A")'None$python-c'importos;printos.environ["A"]'Traceback(mostrecentcalllast):File"",line1,inFile"/usr/lib/python2.7/UserDict.py",line23,in__getitem__raiseKeyError(key)KeyError:'A'但是PATH变量一切正常:$echo$PATH

python - 什么时候 os.environ ['foo' ] 不匹配 os.getenv ('foo' )?

我有一个小的Python应用程序,通过subprocess.Popen启动,它接受一些环境变量形式的参数。我通过将环境结构传递给Popen调用来做到这一点。然后程序通过os.getenv读取变量。或者更确切地说,它曾经以这种方式阅读它们。在Windows上,它运行良好。但是在我们的FreeBSD服务器上,os.getenv为我们传入的所有参数返回None。奇怪的是os.environ有值就好了——事实上,只需将所有os.getenv('foo')调用切换到os.environ['foo']就可以在两个平台。为什么这些值不同?什么时候比较合适? 最佳答案

python - 什么时候 os.environ ['foo' ] 不匹配 os.getenv ('foo' )?

我有一个小的Python应用程序,通过subprocess.Popen启动,它接受一些环境变量形式的参数。我通过将环境结构传递给Popen调用来做到这一点。然后程序通过os.getenv读取变量。或者更确切地说,它曾经以这种方式阅读它们。在Windows上,它运行良好。但是在我们的FreeBSD服务器上,os.getenv为我们传入的所有参数返回None。奇怪的是os.environ有值就好了——事实上,只需将所有os.getenv('foo')调用切换到os.environ['foo']就可以在两个平台。为什么这些值不同?什么时候比较合适? 最佳答案

python - python中的os.open和os.fdopen有什么区别

我真的很困惑何时使用os.open以及何时使用os.fdopen我一直在使用os.open完成所有工作,它没有任何问题,但我无法理解在什么条件下我们需要filedescriptors和所有其他dup和fsync等函数文件对象和文件描述符有区别吗我的意思是f=os.open("file.txt",w)现在是文件对象还是文件描述符? 最佳答案 您将内置open()函数与os模块提供的os.open()混淆了。它们完全不同;os.open(filename,"w")无效Python(os.open接受整数标志作为其第二个参数),open(

python - python中的os.open和os.fdopen有什么区别

我真的很困惑何时使用os.open以及何时使用os.fdopen我一直在使用os.open完成所有工作,它没有任何问题,但我无法理解在什么条件下我们需要filedescriptors和所有其他dup和fsync等函数文件对象和文件描述符有区别吗我的意思是f=os.open("file.txt",w)现在是文件对象还是文件描述符? 最佳答案 您将内置open()函数与os模块提供的os.open()混淆了。它们完全不同;os.open(filename,"w")无效Python(os.open接受整数标志作为其第二个参数),open(

python - 在 Mac OS X Mavericks 上安装 py-ldap(缺少 sasl.h)

我似乎无法在我的OSXMavericks10.9.1机器上安装pythonldap模块。内核详细信息:unname-aDarwin13.0.0Darwin内核版本13.0.0:2013年9月19日星期四22:22:27PDT;根:xnu-2422.1.72~6/RELEASE_X86_64x86_64我尝试了这里的建议:http://projects.skurfer.com/posts/2011/python_ldap_lion/但是当我尝试使用pip时,我得到一个不同的错误Modules/LDAPObject.c:18:10:fatalerror:找不到“sasl.h”文件*#inc

python - 在 Mac OS X Mavericks 上安装 py-ldap(缺少 sasl.h)

我似乎无法在我的OSXMavericks10.9.1机器上安装pythonldap模块。内核详细信息:unname-aDarwin13.0.0Darwin内核版本13.0.0:2013年9月19日星期四22:22:27PDT;根:xnu-2422.1.72~6/RELEASE_X86_64x86_64我尝试了这里的建议:http://projects.skurfer.com/posts/2011/python_ldap_lion/但是当我尝试使用pip时,我得到一个不同的错误Modules/LDAPObject.c:18:10:fatalerror:找不到“sasl.h”文件*#inc

python - os.path.splitext 相对于常规 .split 的好处?

在thisotherquestion,投票清楚地表明os.path.splitext函数优于简单的.split('.')[-1]字符串操作。有没有人有时间来解释为什么会这样?它更快,或更准确,还是什么?我愿意接受它有更好的地方,但我不能立即看到它可能是什么。至少在简单的情况下,导入整个模块来执行此操作是否可能有点矫枉过正?编辑:操作系统的特殊性是一个巨大的胜利,并不是很明显;但即使我也应该看到“如果没有点怎么办”的情况!感谢大家对图书馆使用的一般评论。 最佳答案 嗯,不同的操作系统有不同的实现。这意味着如果在Mac上提取文件扩展名的

python - os.path.splitext 相对于常规 .split 的好处?

在thisotherquestion,投票清楚地表明os.path.splitext函数优于简单的.split('.')[-1]字符串操作。有没有人有时间来解释为什么会这样?它更快,或更准确,还是什么?我愿意接受它有更好的地方,但我不能立即看到它可能是什么。至少在简单的情况下,导入整个模块来执行此操作是否可能有点矫枉过正?编辑:操作系统的特殊性是一个巨大的胜利,并不是很明显;但即使我也应该看到“如果没有点怎么办”的情况!感谢大家对图书馆使用的一般评论。 最佳答案 嗯,不同的操作系统有不同的实现。这意味着如果在Mac上提取文件扩展名的